@datagrok/eda 1.1.11 → 1.1.13

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.
package/dist/955.js ADDED
@@ -0,0 +1,3 @@
1
+ /*! For license information please see 955.js.LICENSE.txt */
2
+ (self.webpackChunkeda=self.webpackChunkeda||[]).push([[955],{6814:(t,e,n)=>{"use strict";n.d(e,{cZ:()=>i,kK:()=>r}),n(7862);const r=t=>null==t;function i(t,e,n,r){if(n>t[t.length-1])return;const i=t.findIndex((t=>n<t));t.pop(),t.splice(i,0,n),e.pop(),e.splice(i,0,r)}},1955:(t,e,n)=>{"use strict";class r extends Float32Array{}var i=n(1040),s=n(1811),o=n(3979),a=n(5697);function h(t=!1,e="Assertion error."){if(!t)throw new Error(e)}var c=n(489);const l={[i.CF.Euclidean]:function(t,e){let n=0;const r=t.length;if(r!==e.length)throw new Error("The dimensionality of the vectors must match");for(let i=0;i<r;++i)n+=Math.pow(t[i]-e[i],2);return Math.sqrt(n)}},u={[i.W.Levenshtein]:s.T,[i.W.JaroWinkler]:o.H$,[i.W.Manhattan]:function(t,e){if(t.length!==e.length)return 1;{let n=0;for(let r=1;r<t.length;r++)n+=t[r]==e[r]?0:1;return n/t.length}},[i.W.Onehot]:function(t,e){return t===e?0:1}},g={[i.gk.Tanimoto]:a.KR,[i.gk.Dice]:a._h,[i.gk.Asymmetric]:a.yU,[i.gk.BraunBlanquet]:a.Dz,[i.gk.Cosine]:a.Zd,[i.gk.Kulczynski]:a.s,[i.gk.McConnaughey]:a.aW,[i.gk.RogotGoldberg]:a.MI,[i.gk.Russel]:a.fX,[i.gk.Sokal]:a.NB,[i.gk.Hamming]:a.UX,[i.gk.Euclidean]:a.WI},f={[i.gd.TanimotoIntArray]:a.FV},d={[i.Yc.Difference]:a.bX},m={[i.Qe.Vector]:{[i.CF.Euclidean]:l[i.CF.Euclidean]},[i.Qe.String]:{[i.W.Levenshtein]:u[i.W.Levenshtein],[i.W.JaroWinkler]:u[i.W.JaroWinkler],[i.W.Manhattan]:u[i.W.Manhattan],[i.W.Onehot]:u[i.W.Onehot]},[i.Qe.BitArray]:{[i.gk.Tanimoto]:g[i.gk.Tanimoto],[i.gk.Dice]:g[i.gk.Dice],[i.gk.Asymmetric]:g[i.gk.Asymmetric],[i.gk.BraunBlanquet]:g[i.gk.BraunBlanquet],[i.gk.Cosine]:g[i.gk.Cosine],[i.gk.Kulczynski]:g[i.gk.Kulczynski],[i.gk.McConnaughey]:g[i.gk.McConnaughey],[i.gk.RogotGoldberg]:g[i.gk.RogotGoldberg],[i.gk.Russel]:g[i.gk.Russel],[i.gk.Sokal]:g[i.gk.Sokal]},[i.Qe.MacroMolecule]:{[c.U.HAMMING]:c.o[c.U.HAMMING],[c.U.LEVENSHTEIN]:c.o[c.U.LEVENSHTEIN],[c.U.NEEDLEMANN_WUNSCH]:c.o[c.U.NEEDLEMANN_WUNSCH],[c.U.MONOMER_CHEMICAL_DISTANCE]:c.o[c.U.MONOMER_CHEMICAL_DISTANCE]},[i.Qe.Number]:{[i.Yc.Difference]:d[i.Yc.Difference]},[i.Qe.IntArray]:{[i.gd.TanimotoIntArray]:f[i.gd.TanimotoIntArray]}},p=Object.keys(m).reduce(((t,e)=>{for(const n of Object.keys(m[e]))t[n]=e;return t}),{});class w{method;dataType;constructor(t){this.method=t,this.dataType=p[t]}getMeasure(t){const e=m;if(!e.hasOwnProperty(this.dataType)||!e[this.dataType].hasOwnProperty(this.method))throw new Error(`Unknown measure ${this.method} for data type ${this.dataType}`);return n=this.method,p[n]==i.Qe.MacroMolecule.toString()||function(t){return p[t]==i.Qe.Number.toString()}(this.method)?e[this.dataType][this.method](t):e[this.dataType][this.method];var n}static getMetricByDataType(t){return Object.keys(m[t])}static get availableMeasures(){return Object.keys(m)}}n(6814);var y=n(7862);class v{_workers;_workerCount;_terminateOnComplete;constructor(t=!0,e=!0){const r=navigator.hardwareConcurrency;this._workerCount=t?Math.max(r-2,1):1,this._workers=new Array(this._workerCount).fill(null).map((()=>new Worker(new URL(n.p+n.u(65),n.b)))),this._terminateOnComplete=e}async calc(t,e,n=!0,r){return await this.calcMulti([t],[e],n,[r??{}],[1],y.y.MANHATTAN)}async calcMulti(t,e,n=!0,r=[{}],i=[1],s=y.y.MANHATTAN){if(t.length<1)throw new Error("values must contain at least one array");if(e.length!==t.length||r.length!==t.length||i.length!==t.length)throw new Error("values, fnNames, weights and opts must have the same length");return new Promise((async(o,a)=>{try{const a=t[0].length,h=new Array(this._workerCount),c=a*(a-1)/2;this._workerCount=Math.min(this._workerCount,c);const l=c/this._workerCount,u=new Float32Array(c);let g=0,f=1,d=0,m=Number.MIN_VALUE;for(let n=0;n<this._workerCount;n++){const o=Math.floor(n*l),p=n===this._workerCount-1?c:Math.floor((n+1)*l),w=g,y=f;n!==this._workerCount-1&&(g=a-2-Math.floor(Math.sqrt(-8*p+4*a*(a-1)-7)/2-.5),f=p-a*g+Math.floor((g+1)*(g+2)/2)),this._workers[n].postMessage({values:t,fnNames:e,startRow:w,startCol:y,chunckSize:p-o,opts:r,weights:i,aggregationMethod:s}),h[n]=new Promise(((t,e)=>{this._workers[n].onmessage=({data:{error:r,distanceMatrixData:i,min:s,max:a}})=>{this._terminateOnComplete&&setTimeout((()=>this._workers[n].terminate())),r?e(r):(u.set(i,o),s<d&&(d=s),a>m&&(m=a),t())}}))}await Promise.all(h),n&&u.forEach(((t,e)=>{u[e]=(t-d)/(m-d)})),o(u)}catch(t){a(t)}}))}terminate(){this._workers.forEach((t=>t.terminate()))}}function x(t,e){return Math.floor(e()*t)}function b(t){return t()}function M(t){const e=[];for(let n=0;n<t;n++)e.push(void 0);return e}function k(t){return M(t).map(((t,e)=>e))}function N(t,e){return M(t).map((()=>e))}function S(t){return N(t,0)}function E(t){return function(t){return t.reduce(((t,e)=>t+e))}(t)/t.length}function A(t){let e=0;for(let n=0;n<t.length;n++)e=t[n]>e?t[n]:e;return e}function F(t,e,n){const r=S(t);for(let i=0;i<t;i++){let t=!0;for(;t;){const s=x(e,n);let o=!1;for(let t=0;t<i;t++)if(s===r[t]){o=!0;break}o||(t=!1),r[i]=s}}return r}function z(t,e,n){const r=[];let i=0;if(t.length!==e*n)throw new Error("Array dimensions must match input length.");for(let s=0;s<e;s++){const e=[];for(let r=0;r<n;r++)e.push(t[i]),i+=1;r.push(e)}return r}function C(t,e){const n=n=>M(t).map((()=>N(e,n))),r=[];return r.push(n(-1)),r.push(n(1/0)),r.push(n(0)),r}function D(t,e,n){const r=S(t);for(let i=0;i<t;i++){let t=!0,s=0;for(;t;){s=x(e,n);let o=!1;for(let t=0;t<i;t++)if(s===r[t]){o=!0;break}o||(t=!1)}r[i]=s}return r}function R(t,e,n,r,i){e=Math.floor(e);const s=t[0][e];if(n>=t[1][e][0])return 0;for(let t=0;t<s.length;t++)if(r===s[t])return 0;return O(t,e,n,r,i)}function O(t,e,n,r,i){const s=t[0][e],o=t[1][e],a=t[2][e];if(n>=o[0])return 0;o[0]=n,s[0]=r,a[0]=i;let h=0,c=0;for(;;){const e=2*h+1,r=e+1,i=t[0][0].length;if(e>=i)break;if(r>=i){if(!(o[e]>n))break;c=e}else if(o[e]>=o[r]){if(!(n<o[e]))break;c=e}else{if(!(n<o[r]))break;c=r}o[h]=o[c],s[h]=s[c],a[h]=a[c],h=c}return o[h]=n,s[h]=r,a[h]=i,1}function T(t,e,n,r,i){const s=C(e,r);for(let r=0;r<e;r++)for(let e=0;e<n;e++){if(t[0][r][e]<0)continue;const n=t[0][r][e],o=t[2][r][e],a=b(i);R(s,r,a,n,o),R(s,n,a,r,o),t[2][r][e]=0}return s}function I(t){const e=t[0],n=t[1];for(let t=0;t<e.length;t++){const r=e[t],i=n[t];for(let t=0;t<r.length-1;t++){const e=r.length-t-1,n=i.length-t-1,s=r[0];r[0]=r[e],r[e]=s;const o=i[0];i[0]=i[n],i[n]=o,P(i,r,n,0)}}return{indices:e,weights:n}}function P(t,e,n,r){for(;2*r+1<n;){const i=2*r+1,s=i+1;let o=r;if(t[o]<t[i]&&(o=i),s<n&&t[o]<t[s]&&(o=s),o===r)break;{const n=t[r];t[r]=t[o],t[o]=n;const i=e[r];e[r]=e[o],e[o]=i,r=o}}}function _(t,e){const n=t[0][e],r=t[1][e],i=t[2][e];let s=1/0,o=-1;for(let t=0;t>n.length;t++)1===i[t]&&r[t]<s&&(s=r[t],o=t);return o>=0?(i[o]=0,Math.floor(n[o])):-1}class V{entries=new Map;nRows=0;nCols=0;constructor(t,e,n,r){if(t.length!==e.length||t.length!==n.length)throw new Error("rows, cols and values arrays must all have the same length");this.nRows=r[0],this.nCols=r[1];for(let r=0;r<n.length;r++){const i=t[r],s=e[r];this.checkDims(i,s);const o=this.makeKey(i,s);this.entries.set(o,{value:n[r],row:i,col:s})}}makeKey(t,e){return`${t}:${e}`}checkDims(t,e){if(!(t<this.nRows&&e<this.nCols))throw new Error("row and/or col specified outside of matrix dimensions")}set(t,e,n){this.checkDims(t,e);const r=this.makeKey(t,e);this.entries.has(r)?this.entries.get(r).value=n:this.entries.set(r,{value:n,row:t,col:e})}get(t,e,n=0){const r=this.makeKey(t,e);return this.entries.has(r)?this.entries.get(r).value:n}getAll(t=!0){const e=new Array(this.entries.size).fill(null);let n=0;return this.entries.forEach((t=>{e[n++]=t})),t&&e.sort(((t,e)=>t.row===e.row?t.col-e.col:t.row-e.row)),e}getDims(){return[this.nRows,this.nCols]}getRows(){return Array.from(this.entries,(([t,e])=>e.row))}getCols(){return Array.from(this.entries,(([t,e])=>e.col))}getValues(){return Array.from(this.entries,(([t,e])=>e.value))}forEach(t){this.entries.forEach((e=>t(e.value,e.row,e.col)))}map(t){const e=new Float32Array(this.entries.size);let n=0;this.entries.forEach((r=>{e[n++]=t(r.value,r.row,r.col)}));const r=[this.nRows,this.nCols];return new V(this.getRows(),this.getCols(),e,r)}toArray(){const t=M(this.nRows).map((()=>S(this.nCols)));return this.entries.forEach((e=>{t[e.row][e.col]=e.value})),t}}function L(t){const e=t.getRows(),n=t.getCols(),r=t.getValues(),i=n.length,s=new Int32Array(i),o=new Int32Array(i),a=new Float32Array(i);s.set(e),o.set(n),a.set(r);const h=[t.nCols,t.nRows];return new V(o,s,a,h)}function W(t,e){return K(t,e,((t,e)=>t*e))}function j(t,e){return K(t,e,((t,e)=>t+e))}function Y(t,e){return K(t,e,((t,e)=>t-e))}function q(t,e){return t.map((t=>t*e))}function G(t){const e=new Set,n=t.getValues(),r=t.getRows(),i=t.getCols();for(let t=0;t<n.length;t++)0===n[t]&&e.add(t);const s=(t,n)=>!e.has(n),o=n.filter(s),a=r.filter(s),h=i.filter(s);return new V(a,h,o,t.getDims())}function U(t,e="l2"){const n=X[e],r=new Map;t.forEach(((t,e,n)=>{const i=r.get(e)||[];i.push(n),r.set(e,i)}));const i=new V([],[],[],t.getDims());for(const e of r.keys()){const s=r.get(e).sort(),o=n(s.map((n=>t.get(e,n))));for(let t=0;t<o.length;t++)i.set(e,s[t],o[t])}return i}const X={max:t=>{let e=-1/0;for(let n=0;n<t.length;n++)e=t[n]>e?t[n]:e;return t.map((t=>t/e))},l1:t=>{let e=0;for(let n=0;n<t.length;n++)e+=t[n];return t.map((t=>t/e))},l2:t=>{let e=0;for(let n=0;n<t.length;n++)e+=t[n]**2;return t.map((t=>Math.sqrt(t**2/e)))}};function K(t,e,n){const r=new Set,i=[],s=[],o=[],a=(r,a)=>{i.push(r),s.push(a);const h=n(t.get(r,a),e.get(r,a));o.push(h)},h=t.getValues(),c=t.getRows(),l=t.getCols();for(let t=0;t<h.length;t++){const e=c[t],n=l[t],i=`${e}:${n}`;r.add(i),a(e,n)}const u=e.getValues(),g=e.getRows(),f=e.getCols();for(let t=0;t<u.length;t++){const e=g[t],n=f[t],i=`${e}:${n}`;r.has(i)||a(e,n)}const d=[t.nRows,t.nCols];return new V(i,s,o,d)}function B(t){const e=[];t.forEach(((t,n,r)=>{e.push({value:t,row:n,col:r})})),e.sort(((t,e)=>t.row===e.row?t.col-e.col:t.row-e.row));const n=[],r=[],i=[];let s=-1;for(let t=0;t<e.length;t++){const{row:o,col:a,value:h}=e[t];o!==s&&(s=o,i.push(t)),n.push(a),r.push(h)}return{indices:n,values:r,indptr:i}}class H{hyperplanes;offsets;children;indices;constructor(t,e,n,r){this.hyperplanes=t,this.offsets=e,this.children=n,this.indices=r}}function Q(t,e,n,r){const i=Math.max(10,e),s=k(n).map(((e,n)=>function(t,e=30,n,r){return $(t,k(t.length),e,n,r)}(t,i,n,r))),o=s.map((t=>function(t,e){const n=J(t),r=tt(t),i=k(n).map((()=>t.hyperplane?1:0)),s=S(n),o=k(n).map((()=>[-1,-1])),a=k(r).map((()=>k(e).map((()=>-1))));return Z(t,i,s,o,a,0,0),new H(i,s,o,a)}(t,i)));return o}function $(t,e,n=30,r,i){if(e.length>n){const s=function(t,e,n){const r=x(e.length,n);let i=x(e.length,n);i+=r===i?1:0,i%=e.length;const s=e[r],o=e[i];let a=0,h=0;h=t[s]-t[o],a-=h*(t[s]+t[o])/2;let c=0,l=0;const u=S(e.length);for(let r=0;r<e.length;r++){let i=a;i+=h*t[e[r]],0===i?(u[r]=x(2,n),0===u[r]?c+=1:l+=1):i>0?(u[r]=0,c+=1):(u[r]=1,l+=1)}const g=S(c),f=S(l);c=0,l=0;for(let t=0;t<u.length;t++)0===u[t]?(g[c]=e[t],c+=1):(f[l]=e[t],l+=1);return{indicesLeft:g,indicesRight:f,hyperplane:h,offset:a}}(t,e,i),{indicesLeft:o,indicesRight:a,hyperplane:h,offset:c}=s;return{leftChild:$(t,o,n,r+1,i),rightChild:$(t,a,n,r+1,i),isLeaf:!1,hyperplane:h,offset:c}}return{indices:e,isLeaf:!0}}function Z(t,e,n,r,i,s,o){if(t.isLeaf)return r[s][0]=-o,i[o].splice(0,t.indices.length,...t.indices),{nodeNum:s,leafNum:o+=1};{e[s]=t.hyperplane,n[s]=t.offset,r[s][0]=s+1;const a=s;let h=Z(t.leftChild,e,n,r,i,s+1,o);return s=h.nodeNum,o=h.leafNum,r[a][1]=s+1,h=Z(t.rightChild,e,n,r,i,s+1,o),{nodeNum:h.nodeNum,leafNum:h.leafNum}}}function J(t){return t.isLeaf?1:1+J(t.leftChild)+J(t.rightChild)}function tt(t){return t.isLeaf?1:tt(t.leftChild)+tt(t.rightChild)}function et(t,e,n,r){let i=e;return i+=t*n,0===i?x(2,r):i>0?0:1}function nt(t,e,n){let r=0;for(;e.children[r][0]>0;)r=0===et(e.hyperplanes[r],e.offsets[r],t,n)?e.children[r][0]:e.children[r][1];const i=-1*e.children[r][0];return e.indices[i]}var rt=n(7531),it=n(1353),st=n(4162);const ot=1e-5,at=.001;class ht{learningRate=1;localConnectivity=1;minDist=.1;nComponents=2;nEpochs=0;nNeighbors=15;negativeSampleRate=5;random=Math.random;repulsionStrength=1;setOpMixRatio=1;spread=1;transformQueueSize=4;targetMetric="categorical";targetWeight=.5;targetNNeighbors=15;distanceFn=ct;knnIndices;knnDistances;graph;X;isInitialized=!1;rpForest=[];initFromRandom;initFromTree;search;searchGraph;Y;embedding=[];optimizationState=new lt;get neighbors(){return this.nNeighbors}constructor(t={}){const e=e=>{void 0!==t[e]&&(this[e]=t[e])};e("distanceFn"),e("learningRate"),e("localConnectivity"),e("minDist"),e("nComponents"),e("nEpochs"),e("nNeighbors"),e("negativeSampleRate"),e("random"),e("repulsionStrength"),e("setOpMixRatio"),e("spread"),e("transformQueueSize"),this.targetNNeighbors=t.nNeighbors||this.nNeighbors||this.targetNNeighbors}fit(t){return this.initializeFit(t),this.optimizeLayout(),this.embedding}async fitAsync(t,e=(()=>!0)){return this.initializeFit(t),await this.optimizeLayoutAsync(e),this.embedding}setSupervisedProjection(t,e={}){this.Y=t,this.targetMetric=e.targetMetric||this.targetMetric,this.targetWeight=e.targetWeight||this.targetWeight,this.targetNNeighbors=e.targetNNeighbors||this.targetNNeighbors}setPrecomputedKNN(t,e){this.knnIndices=t,this.knnDistances=e}initializeFit(t){if(t.length<=this.nNeighbors)throw new Error(`Not enough data points (${t.length}) to create nNeighbors: ${this.nNeighbors}. Add more data points or adjust the configuration.`);if(this.X===t&&this.isInitialized)return this.getNEpochs();if(this.X=t,!this.knnIndices&&!this.knnDistances){const e=this.nearestNeighbors(t);this.knnIndices=e.knnIndices,this.knnDistances=e.knnDistances}this.graph=this.fuzzySimplicialSet(t,this.nNeighbors,this.setOpMixRatio),this.makeSearchFns(),this.searchGraph=this.makeSearchGraph(t),this.processGraphForSupervisedProjection();const{head:e,tail:n,epochsPerSample:r}=this.initializeSimplicialSetEmbedding();return this.optimizationState.head=e,this.optimizationState.tail=n,this.optimizationState.epochsPerSample=r,this.initializeOptimization(),this.prepareForOptimizationLoop(),this.isInitialized=!0,this.getNEpochs()}makeSearchFns(){const{initFromTree:t,initFromRandom:e}=(n=this.distanceFn,{initFromRandom:function(t,e,r,i,s){for(let o=0;o<r.length;o++){const a=F(t,e.length,s);for(let t=0;t<a.length;t++)a[t]<0||R(i,o,n(e[a[t]],r[o]),a[t],1)}},initFromTree:function(t,e,r,i,s){for(let o=0;o<r.length;o++){const a=nt(r[o],t,s);for(let t=0;t<a.length;t++){if(a[t]<0)return;R(i,o,n(e[a[t]],r[o]),a[t],1)}}}});var n;this.initFromTree=t,this.initFromRandom=e,this.search=function(t){return function(e,n,r,i){const{indices:s,indptr:o}=B(n);for(let n=0;n<i.length;n++){const a=new Set(r[0][n]);for(;;){const h=_(r,n);if(-1===h)break;const c=s.slice(o[h],o[h+1]);for(const s of c)s===h||-1===s||a.has(s)||(O(r,n,t(e[s],i[n]),s,1),a.add(s))}}return r}}(this.distanceFn)}makeSearchGraph(t){const e=this.knnIndices,n=this.knnDistances,r=[t.length,t.length],i=new V([],[],[],r);for(let t=0;t<e.length;t++){const r=e[t],s=n[t];for(let e=0;e<r.length;e++){const n=r[e],o=s[e];o>0&&i.set(t,n,o)}}return K(i,L(i),((t,e)=>t>e?t:e))}transform(t){const e=this.X;if(void 0===e||0===e.length)throw new Error("No data has been fit.");let n=Math.floor(this.nNeighbors*this.transformQueueSize);n=Math.min(e.length,n);const r=function(t,e,n,r,i,s,o){const a=C(n.length,r);if(i(r,e,n,a,o),t)for(const r of t)s(r,e,n,a,o);return a}(this.rpForest,e,t,n,this.initFromRandom,this.initFromTree,this.random),i=this.search(e,this.searchGraph,r,t);let{indices:s,weights:o}=I(i);s=s.map((t=>t.slice(0,this.nNeighbors))),o=o.map((t=>t.slice(0,this.nNeighbors)));const a=Math.max(0,this.localConnectivity-1),{sigmas:h,rhos:c}=this.smoothKNNDistance(o,this.nNeighbors,a),{rows:l,cols:u,vals:g}=this.computeMembershipStrengths(s,o,h,c),f=[t.length,e.length];let d=new V(l,u,g,f);const m=B(U(d,"l1")),p=t.length,w=function(t,e,n){const r=S(t.length).map((t=>S(n[0].length)));for(let i=0;i<t.length;i++)for(let s=0;s<t[0].length;s++)for(let o=0;o<n[0].length;o++){const a=t[i][s];r[i][o]+=e[i][s]*n[a][o]}return r}(z(m.indices,p,this.nNeighbors),z(m.values,p,this.nNeighbors),this.embedding),y=this.nEpochs?this.nEpochs/3:d.nRows<=1e4?100:30,v=d.getValues().reduce(((t,e)=>e>t?e:t),0);d=d.map((t=>t<v/y?0:t)),d=G(d);const x=this.makeEpochsPerSample(d.getValues(),y),b=d.getRows(),M=d.getCols();return this.assignOptimizationStateParameters({headEmbedding:w,tailEmbedding:this.embedding,head:b,tail:M,currentEpoch:0,nEpochs:y,nVertices:d.getDims()[1],epochsPerSample:x}),this.prepareForOptimizationLoop(),this.optimizeLayout()}processGraphForSupervisedProjection(){const{Y:t,X:e}=this;if(t){if(t.length!==e.length)throw new Error("Length of X and y must be equal");if("categorical"===this.targetMetric){const e=this.targetWeight<1?1/(1-this.targetWeight)*2.5:1e12;this.graph=this.categoricalSimplicialSetIntersection(this.graph,t,e)}}}step(){const{currentEpoch:t}=this.optimizationState;return t<this.getNEpochs()&&this.optimizeLayoutStep(t),this.optimizationState.currentEpoch}getEmbedding(){return this.embedding}nearestNeighbors(t){const{distanceFn:e,nNeighbors:n}=this,r=function(t,e){return function(n,r,i,s=10,o=50,a=.001,h=.5,c=!0){const l=n.length,u=C(n.length,i);for(let r=0;r<n.length;r++){const s=D(i,n.length,e);for(let e=0;e<s.length;e++){const i=t(n[r],n[s[e]]);R(u,r,i,s[e],1),R(u,s[e],i,r,1)}}if(c)for(let e=0;e<r.length;e++)for(let i=0;i<r[e].length&&!(r[e][i]<0);i++)for(let s=i+1;s<r[e].length&&!(r[e][s]<0);s++){const o=t(n[r[e][i]],n[r[e][s]]);R(u,r[e][i],o,r[e][s],1),R(u,r[e][s],o,r[e][i],1)}for(let r=0;r<s;r++){const r=T(u,l,i,o,e);let s=0;for(let i=0;i<l;i++)for(let a=0;a<o;a++){const c=Math.floor(r[0][i][a]);if(!(c<0||b(e)<h))for(let e=0;e<o;e++){const o=Math.floor(r[0][i][e]),h=r[2][i][a],l=r[2][i][e];if(o<0||!h&&!l)continue;const g=t(n[c],n[o]);s+=R(u,c,g,o,1),s+=R(u,o,g,c,1)}}if(s<=a*i*n.length)break}return I(u)}}(e,this.random),i=5+Math.floor(.5==(s=t.length**.5/20)?0:Math.round(s));var s;const o=Math.max(5,Math.floor(Math.round((t=>Math.log(t)/Math.log(2))(t.length))));this.rpForest=Q(t,n,i,this.random);const a=function(t){if(t.length>0){const e=[];for(const n of t)e.push(...n.indices);return e}return[[-1]]}(this.rpForest),{indices:h,weights:c}=r(t,a,n,o);return{knnIndices:h,knnDistances:c}}fuzzySimplicialSet(t,e,n=1){const{knnIndices:r=[],knnDistances:i=[],localConnectivity:s}=this,{sigmas:o,rhos:a}=this.smoothKNNDistance(i,e,s),{rows:h,cols:c,vals:l}=this.computeMembershipStrengths(r,i,o,a),u=[t.length,t.length],g=new V(h,c,l,u),f=L(g),d=W(g,f),m=Y(j(g,f),d);return j(q(m,n),q(d,1-n))}categoricalSimplicialSetIntersection(t,e,n,r=1){let i=function(t,e,n=1,r=5){return t.map(((t,i,s)=>-1===e[i]||-1===e[s]?t*Math.exp(-n):e[i]!==e[s]?t*Math.exp(-r):t))}(t,e,r,n);return i=G(i),function(t){const e=L(t=U(t,"max"));return G(t=j(t,Y(e,W(e,t))))}(i)}smoothKNNDistance(t,e,n=1,r=64,i=1){const s=Math.log(e)/Math.log(2)*i,o=S(t.length),a=S(t.length);for(let e=0;e<t.length;e++){let i=0,h=1/0,c=1;const l=t[e],u=l.filter((t=>t>0));if(u.length>=n){const t=Math.floor(n),r=n-t;t>0?(o[e]=u[t-1],r>ot&&(o[e]+=r*(u[t]-u[t-1]))):o[e]=r*u[0]}else u.length>0&&(o[e]=A(u));for(let n=0;n<r;n++){let n=0;for(let r=1;r<t[e].length;r++){const i=t[e][r]-o[e];n+=i>0?Math.exp(-i/c):1}if(Math.abs(n-s)<ot)break;n>s?(h=c,c=(i+h)/2):(i=c,h===1/0?c*=2:c=(i+h)/2)}if(a[e]=c,o[e]>0){const t=E(l);a[e]<at*t&&(a[e]=at*t)}else{const n=E(t.map(E));a[e]<at*n&&(a[e]=at*n)}}return{sigmas:a,rhos:o}}computeMembershipStrengths(t,e,n,r){const i=t.length,s=t[0].length,o=S(i*s),a=S(i*s),h=S(i*s);for(let c=0;c<i;c++)for(let i=0;i<s;i++){let l=0;-1!==t[c][i]&&(l=t[c][i]===c?0:e[c][i]-r[c]<=0?1:Math.exp(-(e[c][i]-r[c])/n[c]),o[c*s+i]=c,a[c*s+i]=t[c][i],h[c*s+i]=l)}return{rows:o,cols:a,vals:h}}initializeSimplicialSetEmbedding(){const t=this.getNEpochs(),{nComponents:e}=this,n=this.graph.getValues();let r=0;for(let t=0;t<n.length;t++){const e=n[t];r<n[t]&&(r=e)}const i=this.graph.map((e=>e<r/t?0:e));this.embedding=S(i.nRows).map((()=>S(e).map((()=>20*b(this.random)-10))));const s=[],o=[],a=[],h=i.getAll();for(let t=0;t<h.length;t++){const e=h[t];e.value&&(s.push(e.value),a.push(e.row),o.push(e.col))}return{head:o,tail:a,epochsPerSample:this.makeEpochsPerSample(s,t)}}makeEpochsPerSample(t,e){const n=N(t.length,-1),r=A(t),i=t.map((t=>t/r*e));return i.forEach(((t,r)=>{t>0&&(n[r]=e/i[r])})),n}assignOptimizationStateParameters(t){Object.assign(this.optimizationState,t)}prepareForOptimizationLoop(){const{repulsionStrength:t,learningRate:e,negativeSampleRate:n}=this,{epochsPerSample:r,headEmbedding:i,tailEmbedding:s}=this.optimizationState,o=i[0].length,a=i.length===s.length,h=r.map((t=>t/n)),c=[...h],l=[...r];this.assignOptimizationStateParameters({epochOfNextSample:l,epochOfNextNegativeSample:c,epochsPerNegativeSample:h,moveOther:a,initialAlpha:e,alpha:e,gamma:t,dim:o})}initializeOptimization(){const t=this.embedding,e=this.embedding,{head:n,tail:r,epochsPerSample:i}=this.optimizationState,s=this.getNEpochs(),o=this.graph.nCols,{a,b:h}=function(t,e){const n=function(t,e,n){return M(300).map(((t,n)=>0+n*((e-0)/299)))}(0,3*t).map((t=>t<e?1:t)),r=S(n.length).map(((r,i)=>n[i]>=e?Math.exp(-(n[i]-e)/t):r)),i={x:n,y:r},{parameterValues:s}=function(t,e,n={}){let{maxIterations:r=100,gradientDifference:i=.1,damping:s=0,errorTolerance:o=.01,minValues:a,maxValues:h,initialValues:c}=n;if(s<=0)throw new Error("The damping option must be a positive number");if(!t.x||!t.y)throw new Error("The data parameter must have x and y elements");if(!(0,rt.Z)(t.x)||t.x.length<2||!(0,rt.Z)(t.y)||t.y.length<2)throw new Error("The data parameter elements must be an array with more than 2 points");if(t.x.length!==t.y.length)throw new Error("The data parameter elements must have the same size");let l=c||new Array(e.length).fill(1),u=l.length;if(h=h||new Array(u).fill(Number.MAX_SAFE_INTEGER),a=a||new Array(u).fill(Number.MIN_SAFE_INTEGER),h.length!==a.length)throw new Error("minValues and maxValues must be the same size");if(!(0,rt.Z)(l))throw new Error("initialValues must be an array");let g,f=(0,it.Z)(t,l,e),d=f<=o;for(g=0;g<r&&!d;g++){l=(0,st.Z)(t,l,s,i,e);for(let t=0;t<u;t++)l[t]=Math.min(Math.max(a[t],l[t]),h[t]);if(f=(0,it.Z)(t,l,e),isNaN(f))break;d=f<=o}return{parameterValues:l,parameterError:f,iterations:g}}(i,(([t,e])=>n=>1/(1+t*n**(2*e))),{damping:1.5,initialValues:[.5,.5],gradientDifference:.1,maxIterations:100,errorTolerance:.01}),[o,a]=s;return{a:o,b:a}}(this.spread,this.minDist);this.assignOptimizationStateParameters({headEmbedding:t,tailEmbedding:e,head:n,tail:r,epochsPerSample:i,a,b:h,nEpochs:s,nVertices:o})}optimizeLayoutStep(t){const{optimizationState:e}=this,{head:n,tail:r,headEmbedding:i,tailEmbedding:s,epochsPerSample:o,epochOfNextSample:a,epochOfNextNegativeSample:h,epochsPerNegativeSample:c,moveOther:l,initialAlpha:u,alpha:g,gamma:f,a:d,b:m,dim:p,nEpochs:w,nVertices:y}=e;for(let e=0;e<o.length;e++){if(a[e]>t)continue;const u=n[e],w=r[e],v=i[u],b=s[w],M=gt(v,b);let k=0;M>0&&(k=-2*d*m*Math.pow(M,m-1),k/=d*Math.pow(M,m)+1);for(let t=0;t<p;t++){const e=ut(k*(v[t]-b[t]),4);v[t]+=e*g,l&&(b[t]+=-e*g)}a[e]+=o[e];const N=Math.floor((t-h[e])/c[e]);for(let t=0;t<N;t++){const t=x(y,this.random),e=s[t],n=gt(v,e);let r=0;if(n>0)r=2*f*m,r/=(.001+n)*(d*Math.pow(n,m)+1);else if(u===t)continue;for(let t=0;t<p;t++){let n=4;r>0&&(n=ut(r*(v[t]-e[t]),4)),v[t]+=n*g}}h[e]+=N*c[e]}return e.alpha=u*(1-t/w),e.currentEpoch+=1,i}optimizeLayoutAsync(t=(()=>!0)){return new Promise(((e,n)=>{const r=async()=>{try{const{nEpochs:n,currentEpoch:i}=this.optimizationState;this.embedding=this.optimizeLayoutStep(i);const s=this.optimizationState.currentEpoch,o=!1===t(s),a=s===n;if(o||a)return e(a);setTimeout((()=>r()),0)}catch(t){n(t)}};setTimeout((()=>r()),0)}))}optimizeLayout(t=(()=>!0)){let e=!1,n=[];for(;!e;){const{nEpochs:r,currentEpoch:i}=this.optimizationState;n=this.optimizeLayoutStep(i);const s=this.optimizationState.currentEpoch,o=!1===t(s);e=s===r||o}return n}getNEpochs(){const t=this.graph;if(this.nEpochs>0)return this.nEpochs;if(!t)return 200;const e=t.nRows;return e<=2500?500:e<=5e3?400:e<=7500?300:200}}function ct(t,e){return Math.abs(t-e)}class lt{currentEpoch=0;headEmbedding=[];tailEmbedding=[];head=[];tail=[];epochsPerSample=[];epochOfNextSample=[];epochOfNextNegativeSample=[];epochsPerNegativeSample=[];moveOther=!0;initialAlpha=1;alpha=1;gamma=1;a=1.5769434603113077;b=.8950608779109733;dim=2;nEpochs=500;nVertices=0}function ut(t,e){return t>e?e:t<-e?-e:t}function gt(t,e){let n=0;for(let r=0;r<t.length;r++)n+=Math.pow(t[r]-e[r],2);return n}var ft=n(2590),dt=n(9657),mt=n(6377),pt=n.n(mt);class wt{perplexity;dim;epsilon;iter=0;N;P;Y;gains;ystep;random=Math.random;assert(t,e){if(!t)throw e||"Assertion failed"}getopt(t,e,n){return t.hasOwnProperty(e)?t[e]:n}returnV=!1;vValue=0;gaussRandom(){if(this.returnV)return this.returnV=!1,this.vValue;const t=2*this.random()-1,e=2*this.random()-1,n=t*t+e*e;if(0===n||n>1)return this.gaussRandom();const r=Math.sqrt(-2*Math.log(n)/n);return this.vValue=e*r,this.returnV=!0,t*r}randn(t,e){return t+this.gaussRandom()*e}zeros(t){if(void 0===t||isNaN(t))return new Float32Array;if("undefined"==typeof ArrayBuffer){const e=new Float32Array(t);for(let n=0;n<t;n++)e[n]=0;return e}return new Float32Array(t)}randn2d(t,e,n){const r=void 0!==n,i=new Array(t).fill(null).map((()=>new Float32Array(e)));if(r)for(let r=0;r<t;r++)i[r]=new Float32Array(e).fill(n);else for(let n=0;n<t;n++)for(let t=0;t<e;t++)i[n][t]=this.randn(0,1e-4);return i}l2(t,e){const n=t.length;let r=0;for(let i=0;i<n;i++){const n=t[i],s=e[i];r+=(n-s)*(n-s)}return r}xtod(t){const e=t.length,n=this.zeros(e*e);for(let r=0;r<e;r++)for(let i=r+1;i<e;i++){const s=this.l2(t[r],t[i]);n[r*e+i]=s,n[i*e+r]=s}return n}getIterSize(t){return t<=2e3?100:t<=3e3?90:t<=5e3?80:70}d2p(t,e,n,r){const i=(o=r,(t,e)=>o*t+e-Math.floor((t+2)*(t+1)/2)),s=new Float32Array(r*r);var o;for(let e=0;e<r;e++)for(let n=e+1;n<r;n++)s[e*r+n]=s[n*r+e]=t[i(e,n)];const a=r,h=Math.log(e),c=this.zeros(a*a),l=this.zeros(a);for(let t=0;t<a;t++){let e=-1/0,i=1/0,o=1,u=!1;const g=Math.floor(this.getIterSize(r)/5);let f=0;for(;!u;){let r=0;for(let e=0;e<a;e++){const n=t===e?0:Math.exp(-s[t*a+e]*o);l[e]=n,r+=n}let c=0;for(let t=0;t<a;t++){let e;e=0===r?0:l[t]/r,l[t]=e,e>1e-7&&(c-=e*Math.log(e))}c>h?(e=o,i===1/0?o*=2:o=(o+i)/2):(i=o,e===-1/0?o/=2:o=(o+e)/2),f++,Math.abs(c-h)<n&&(u=!0),f>=g&&(u=!0)}for(let e=0;e<a;e++)c[t*a+e]=l[e]}const u=this.zeros(a*a),g=2*a;for(let t=0;t<a;t++)for(let e=0;e<a;e++)u[t*a+e]=Math.max((c[t*a+e]+c[e*a+t])/g,1e-100);return u}sign(t){return t>0?1:t<0?-1:0}constructor(t){t=t||{},this.perplexity=this.getopt(t,"perplexity",30),this.dim=this.getopt(t,"dim",2),this.epsilon=this.getopt(t,"epsilon",10),this.random=this.getopt(t,"random",Math.random)}initDataRaw(t){const e=t.length,n=t[0].length;this.assert(e>0," X is empty? You must have some data!"),this.assert(n>0," X[0] is empty? Where is the data?");const r=this.xtod(t);this.P=this.d2p(r,this.perplexity,1e-4,n),this.N=e,this.initSolution()}initDataDist(t,e){const n=t.length;this.assert(n>0," X is empty? You must have some data!"),console.time("distances to matrix"),this.P=this.d2p(t,this.perplexity,1e-4,e),console.timeEnd("distances to matrix"),this.N=e,this.initSolution()}initSolution(){this.Y=this.randn2d(this.N,this.dim),this.gains=this.randn2d(this.N,this.dim,1),this.ystep=this.randn2d(this.N,this.dim,0),this.iter=0}getSolution(){return this.Y}step(){this.iter+=1;const t=this.N,e=this.costGrad(this.Y),n=e.cost,r=e.grad,i=this.zeros(this.dim);for(let e=0;e<t;e++)for(let t=0;t<this.dim;t++){const n=r[e][t],s=this.ystep[e][t],o=this.gains[e][t];let a=this.sign(n)===this.sign(s)?.8*o:o+.2;a<.01&&(a=.01),this.gains[e][t]=a;const h=(this.iter<250?.5:.8)*s-this.epsilon*a*r[e][t];this.ystep[e][t]=h,this.Y[e][t]+=h,i[t]+=this.Y[e][t]}for(let e=0;e<t;e++)for(let n=0;n<this.dim;n++)this.Y[e][n]-=i[n]/t;return n}debugGrad(){const t=this.N,e=this.costGrad(this.Y).grad,n=1e-5;for(let r=0;r<t;r++)for(let t=0;t<this.dim;t++){const i=this.Y[r][t];this.Y[r][t]=i+n;const s=this.costGrad(this.Y);this.Y[r][t]=i-n;const o=this.costGrad(this.Y),a=e[r][t],h=(s.cost-o.cost)/(2*n);console.log(r+","+t+": gradcheck analytic: "+a+" vs. numerical: "+h),this.Y[r][t]=i}}quArr;costGrad(t){const e=this.N,n=this.dim,r=this.P,i=this.iter<100?4:1;this.quArr??=this.zeros(e*e);let s=0;for(let r=0;r<e;r++)for(let i=r+1;i<e;i++){const o=1/(1+new Array(n).reduce(((e,n,s)=>e+Math.pow(t[r][s]-t[i][s],2)),0));this.quArr[r*e+i]=o,this.quArr[i*e+r]=o,s+=2*o}let o=0;const a=new Array(e).fill(null).map((()=>new Float32Array(n).fill(0)));for(let h=0;h<e;h++)for(let c=h+1;c<e;c++){const l=Math.max(this.quArr[h*e+c]/s,1e-100);o+=-r[h*e+c]*Math.log(l)*2;const u=4*(i*r[h*e+c]-l)*this.quArr[h*e+c];for(let e=0;e<n;e++)a[h][e]+=u*(t[h][e]-t[c][e]),a[c][e]+=u*(t[c][e]-t[h][e])}return{cost:o,grad:a}}}class yt{data;weights;aggregationMethod;constructor(t){this.data=t.data,this.weights=t.weights,this.aggregationMethod=t.aggregationMethod}}class vt extends yt{reducer;iterations;distanceFnames;distanceFns;distanceFnArgs;progressFunc;constructor(t){super(t);const e=t.randomSeed??Date(),n=pt()(e);t.random=n,this.reducer=new wt(t),this.iterations=t?.iterations??this.reducer.getIterSize(this.data[0].length),this.distanceFnames=t.distanceFnames,this.distanceFns=t.distanceFns,this.distanceFnArgs=t.distanceFnArgs,this.progressFunc=t.progressFunc}async transform(){if(this.data[0].length>1e4)throw new Error("Maximum number of samples for T-SNE is 10000");const t=new v(!0,!1);try{const e=await t.calcMulti(this.data,this.distanceFnames,!1,this.distanceFnArgs,this.weights,this.aggregationMethod);t.terminate(),this.reducer.initDataDist(e,this.data[0].length);for(let t=0;t<this.iterations;++t)this.reducer.step(),this.progressFunc&&this.progressFunc(t,this.iterations,[]);return this.reducer.getSolution()}catch(e){throw t.terminate(),e}}}class xt extends yt{reducer;distanceFnames;distanceFns;vectors;progressFunc;distanceFnArgs;constructor(t){const e=t.randomSeed??Date(),n=pt()(e);super(t),h("distanceFnames"in t),h("distanceFns"in t),this.distanceFnArgs=t.distanceFnArgs,this.distanceFns=t.distanceFns,this.progressFunc=t.progressFunc,this.distanceFnames=t.distanceFnames,this.vectors=new Array(this.data[0].length).fill(0).map(((t,e)=>e)),this.data[0].length<=(t.nNeighbors??15)&&(t.nNeighbors=this.data[0].length-1),t.random=n,this.reducer=new ht(t)}async transform(t){console.time("knn graph");const e=await(new ft._).multiColumnKNN(this.data,this.distanceFnames,this.reducer.neighbors,this.distanceFnArgs,this.weights,this.aggregationMethod);console.timeEnd("knn graph"),this.reducer.setPrecomputedKNN(e.knnIndexes,e.knnDistances),await new Promise((t=>{setTimeout((()=>{t()}),300)}));const n=await this.reducer.fitAsync(this.vectors,(t=>{this.progressFunc&&this.progressFunc(t,this.reducer.getNEpochs(),this.reducer.getEmbedding())}));return i=n,new Array(i.length).fill(0).map(((t,e)=>r.from(i[e])));var i}}const bt={UMAP:xt,"t-SNE":vt};class Mt{reducer;constructor(t,e,n,r,i,s){const o=[];for(let e=0;e<n.length;++e){const r=new w(n[e]).getMeasure(s.distanceFnArgs[e]);o.push(r);let i=2048;for(let n=0;n<t[e].length;++n)if(t[e][n]&&t[e][n]._length){i=t[e][n]._length;break}if(a=n[e],"BitArray"==p[a])for(let n=0;n<t[e].length;++n)t[e][n]&&t[e][n]._data?t[e][n]=new dt.Z(t[e][n]._data,t[e][n]._length):t[e][n]=new dt.Z(i)}var a;"UMAP"==e?this.reducer=new xt({data:t,distanceFnames:n,distanceFns:o,distanceFnArgs:s.distanceFnArgs,weights:r,aggregationMethod:i,...s}):"t-SNE"==e&&(this.reducer=new vt({data:t,distanceFnames:n,distanceFns:o,distanceFnArgs:s.distanceFnArgs,weights:r,aggregationMethod:i,...s}))}async transform(t=!1){if(void 0===this.reducer)throw new Error("Reducer was not defined.");let e=await this.reducer.transform();var n;return t&&(n=e,e=new Array(n[0].length).fill(0).map(((t,e)=>new r(n.length).fill(0).map(((t,r)=>n[r][e]))))),e}static availableMetricsByType(t){return Object.keys(m[t])}static get availableMethods(){return Object.keys(bt)}static get availableMetrics(){let t=[];return Object.values(m).forEach((e=>{const n=Object.values(e);t=[...t,...n]})),t}}async function kt(t,e,n){t%5==0&&self.postMessage({epochNum:t,epochsLength:e,embedding:n})}self.onmessage=async({data:{columnsData:t,method:e,distanceMetrics:n,options:r,weights:i,aggregationMethod:s}})=>{let o;try{const a=await async function(t,e,n,r,i,s){const o=new Mt(t,e,n,r,i,{...s,progressFunc:kt});return await o.transform(!0)}(t,e,n,i,s,r);o={embedding:a}}catch(t){o={error:t}}self.postMessage({error:o.error,embedding:o.embedding})}},6377:(t,e,n)=>{var r=n(4832),i=n(8652),s=n(801),o=n(2030),a=n(3618),h=n(9049),c=n(1971);c.alea=r,c.xor128=i,c.xorwow=s,c.xorshift7=o,c.xor4096=a,c.tychei=h,t.exports=c},4832:function(t,e,n){var r;!function(t,i,s){function o(t){var e,n=this,r=(e=4022871197,function(t){t=String(t);for(var n=0;n<t.length;n++){var r=.02519603282416938*(e+=t.charCodeAt(n));r-=e=r>>>0,e=(r*=e)>>>0,e+=4294967296*(r-=e)}return 2.3283064365386963e-10*(e>>>0)});n.next=function(){var t=2091639*n.s0+2.3283064365386963e-10*n.c;return n.s0=n.s1,n.s1=n.s2,n.s2=t-(n.c=0|t)},n.c=1,n.s0=r(" "),n.s1=r(" "),n.s2=r(" "),n.s0-=r(t),n.s0<0&&(n.s0+=1),n.s1-=r(t),n.s1<0&&(n.s1+=1),n.s2-=r(t),n.s2<0&&(n.s2+=1),r=null}function a(t,e){return e.c=t.c,e.s0=t.s0,e.s1=t.s1,e.s2=t.s2,e}function h(t,e){var n=new o(t),r=e&&e.state,i=n.next;return i.int32=function(){return 4294967296*n.next()|0},i.double=function(){return i()+11102230246251565e-32*(2097152*i()|0)},i.quick=i,r&&("object"==typeof r&&a(r,n),i.state=function(){return a(n,{})}),i}i&&i.exports?i.exports=h:n.amdD&&n.amdO?void 0===(r=function(){return h}.call(e,n,e,i))||(i.exports=r):this.alea=h}(0,t=n.nmd(t),n.amdD)},9049:function(t,e,n){var r;!function(t,i,s){function o(t){var e=this,n="";e.next=function(){var t=e.b,n=e.c,r=e.d,i=e.a;return t=t<<25^t>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-t|0,e.b=t=t<<20^t>>>12^n,e.c=n=n-r|0,e.d=r<<16^n>>>16^i,e.a=i-t|0},e.a=0,e.b=0,e.c=-1640531527,e.d=1367130551,t===Math.floor(t)?(e.a=t/4294967296|0,e.b=0|t):n+=t;for(var r=0;r<n.length+20;r++)e.b^=0|n.charCodeAt(r),e.next()}function a(t,e){return e.a=t.a,e.b=t.b,e.c=t.c,e.d=t.d,e}function h(t,e){var n=new o(t),r=e&&e.state,i=function(){return(n.next()>>>0)/4294967296};return i.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},i.int32=n.next,i.quick=i,r&&("object"==typeof r&&a(r,n),i.state=function(){return a(n,{})}),i}i&&i.exports?i.exports=h:n.amdD&&n.amdO?void 0===(r=function(){return h}.call(e,n,e,i))||(i.exports=r):this.tychei=h}(0,t=n.nmd(t),n.amdD)},8652:function(t,e,n){var r;!function(t,i,s){function o(t){var e=this,n="";e.x=0,e.y=0,e.z=0,e.w=0,e.next=function(){var t=e.x^e.x<<11;return e.x=e.y,e.y=e.z,e.z=e.w,e.w^=e.w>>>19^t^t>>>8},t===(0|t)?e.x=t:n+=t;for(var r=0;r<n.length+64;r++)e.x^=0|n.charCodeAt(r),e.next()}function a(t,e){return e.x=t.x,e.y=t.y,e.z=t.z,e.w=t.w,e}function h(t,e){var n=new o(t),r=e&&e.state,i=function(){return(n.next()>>>0)/4294967296};return i.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},i.int32=n.next,i.quick=i,r&&("object"==typeof r&&a(r,n),i.state=function(){return a(n,{})}),i}i&&i.exports?i.exports=h:n.amdD&&n.amdO?void 0===(r=function(){return h}.call(e,n,e,i))||(i.exports=r):this.xor128=h}(0,t=n.nmd(t),n.amdD)},3618:function(t,e,n){var r;!function(t,i,s){function o(t){var e=this;e.next=function(){var t,n,r=e.w,i=e.X,s=e.i;return e.w=r=r+1640531527|0,n=i[s+34&127],t=i[s=s+1&127],n^=n<<13,t^=t<<17,n^=n>>>15,t^=t>>>12,n=i[s]=n^t,e.i=s,n+(r^r>>>16)|0},function(t,e){var n,r,i,s,o,a=[],h=128;for(e===(0|e)?(r=e,e=null):(e+="\0",r=0,h=Math.max(h,e.length)),i=0,s=-32;s<h;++s)e&&(r^=e.charCodeAt((s+32)%e.length)),0===s&&(o=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,s>=0&&(o=o+1640531527|0,i=0==(n=a[127&s]^=r+o)?i+1:0);for(i>=128&&(a[127&(e&&e.length||0)]=-1),i=127,s=512;s>0;--s)r=a[i+34&127],n=a[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,a[i]=r^n;t.w=o,t.X=a,t.i=i}(e,t)}function a(t,e){return e.i=t.i,e.w=t.w,e.X=t.X.slice(),e}function h(t,e){null==t&&(t=+new Date);var n=new o(t),r=e&&e.state,i=function(){return(n.next()>>>0)/4294967296};return i.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},i.int32=n.next,i.quick=i,r&&(r.X&&a(r,n),i.state=function(){return a(n,{})}),i}i&&i.exports?i.exports=h:n.amdD&&n.amdO?void 0===(r=function(){return h}.call(e,n,e,i))||(i.exports=r):this.xor4096=h}(0,t=n.nmd(t),n.amdD)},2030:function(t,e,n){var r;!function(t,i,s){function o(t){var e=this;e.next=function(){var t,n,r=e.x,i=e.i;return t=r[i],n=(t^=t>>>7)^t<<24,n^=(t=r[i+1&7])^t>>>10,n^=(t=r[i+3&7])^t>>>3,n^=(t=r[i+4&7])^t<<7,t=r[i+7&7],n^=(t^=t<<13)^t<<9,r[i]=n,e.i=i+1&7,n},function(t,e){var n,r=[];if(e===(0|e))r[0]=e;else for(e=""+e,n=0;n<e.length;++n)r[7&n]=r[7&n]<<15^e.charCodeAt(n)+r[n+1&7]<<13;for(;r.length<8;)r.push(0);for(n=0;n<8&&0===r[n];++n);for(8==n?r[7]=-1:r[n],t.x=r,t.i=0,n=256;n>0;--n)t.next()}(e,t)}function a(t,e){return e.x=t.x.slice(),e.i=t.i,e}function h(t,e){null==t&&(t=+new Date);var n=new o(t),r=e&&e.state,i=function(){return(n.next()>>>0)/4294967296};return i.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},i.int32=n.next,i.quick=i,r&&(r.x&&a(r,n),i.state=function(){return a(n,{})}),i}i&&i.exports?i.exports=h:n.amdD&&n.amdO?void 0===(r=function(){return h}.call(e,n,e,i))||(i.exports=r):this.xorshift7=h}(0,t=n.nmd(t),n.amdD)},801:function(t,e,n){var r;!function(t,i,s){function o(t){var e=this,n="";e.next=function(){var t=e.x^e.x>>>2;return e.x=e.y,e.y=e.z,e.z=e.w,e.w=e.v,(e.d=e.d+362437|0)+(e.v=e.v^e.v<<4^t^t<<1)|0},e.x=0,e.y=0,e.z=0,e.w=0,e.v=0,t===(0|t)?e.x=t:n+=t;for(var r=0;r<n.length+64;r++)e.x^=0|n.charCodeAt(r),r==n.length&&(e.d=e.x<<10^e.x>>>4),e.next()}function a(t,e){return e.x=t.x,e.y=t.y,e.z=t.z,e.w=t.w,e.v=t.v,e.d=t.d,e}function h(t,e){var n=new o(t),r=e&&e.state,i=function(){return(n.next()>>>0)/4294967296};return i.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},i.int32=n.next,i.quick=i,r&&("object"==typeof r&&a(r,n),i.state=function(){return a(n,{})}),i}i&&i.exports?i.exports=h:n.amdD&&n.amdO?void 0===(r=function(){return h}.call(e,n,e,i))||(i.exports=r):this.xorwow=h}(0,t=n.nmd(t),n.amdD)},1971:function(t,e,n){var r;!function(i,s,o){var a,h=256,c=o.pow(h,6),l=o.pow(2,52),u=2*l,g=h-1;function f(t,e,n){var r=[],g=w(p((e=1==e?{entropy:!0}:e||{}).entropy?[t,y(s)]:null==t?function(){try{var t;return a&&(t=a.randomBytes)?t=t(h):(t=new Uint8Array(h),(i.crypto||i.msCrypto).getRandomValues(t)),y(t)}catch(t){var e=i.navigator,n=e&&e.plugins;return[+new Date,i,n,i.screen,y(s)]}}():t,3),r),f=new d(r),v=function(){for(var t=f.g(6),e=c,n=0;t<l;)t=(t+n)*h,e*=h,n=f.g(1);for(;t>=u;)t/=2,e/=2,n>>>=1;return(t+n)/e};return v.int32=function(){return 0|f.g(4)},v.quick=function(){return f.g(4)/4294967296},v.double=v,w(y(f.S),s),(e.pass||n||function(t,e,n,r){return r&&(r.S&&m(r,f),t.state=function(){return m(f,{})}),n?(o.random=t,e):t})(v,g,"global"in e?e.global:this==o,e.state)}function d(t){var e,n=t.length,r=this,i=0,s=r.i=r.j=0,o=r.S=[];for(n||(t=[n++]);i<h;)o[i]=i++;for(i=0;i<h;i++)o[i]=o[s=g&s+t[i%n]+(e=o[i])],o[s]=e;(r.g=function(t){for(var e,n=0,i=r.i,s=r.j,o=r.S;t--;)e=o[i=g&i+1],n=n*h+o[g&(o[i]=o[s=g&s+e])+(o[s]=e)];return r.i=i,r.j=s,n})(h)}function m(t,e){return e.i=t.i,e.j=t.j,e.S=t.S.slice(),e}function p(t,e){var n,r=[],i=typeof t;if(e&&"object"==i)for(n in t)try{r.push(p(t[n],e-1))}catch(t){}return r.length?r:"string"==i?t:t+"\0"}function w(t,e){for(var n,r=t+"",i=0;i<r.length;)e[g&i]=g&(n^=19*e[g&i])+r.charCodeAt(i++);return y(e)}function y(t){return String.fromCharCode.apply(0,t)}if(w(o.random(),s),t.exports){t.exports=f;try{a=n(5042)}catch(t){}}else void 0===(r=function(){return f}.call(e,n,e,t))||(t.exports=r)}("undefined"!=typeof self?self:this,[],Math)}}]);
3
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUMwQyxLQUF4QyxhQUFvQixPQUFPL0IsQ0FBYSwrQkFRekMsQ0E5TkQsQ0FpT21CLG9CQUFUN0MsS0FBd0JBLEtBQU85aEIsS0FDdkMsR0FDQXRCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL2Rpc3RhbmNlLW1hdHJpeC91dGlscy5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvdHlwZS1kZWNsYXJhdGlvbnMuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3ZlY3Rvci1vcGVyYXRpb25zLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy90eXBlZC1tZXRyaWNzL3R5cGVkLW1ldHJpY3MuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL2Rpc3RhbmNlLW1hdHJpeC9kaXN0YW5jZS1tYXRyaXgtc2VydmljZS5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdW1hcC91dGlscy5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdW1hcC9oZWFwLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy91bWFwL21hdHJpeC5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdW1hcC90cmVlLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy91bWFwL3VtYXAuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL3VtYXAvbm5fZGVzY2VudC5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvbWwtbGV2ZW5iZXJnLW1hcnF1YXJkdC9zcmMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL3Qtc25lL3Qtc25lLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy9kaXN0YW5jZS1tYXRyaXgvcHJveHkuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL211bHRpLWNvbHVtbi1kaW1lbnNpb25hbGl0eS1yZWR1Y3Rpb24vbXVsdGktY29sdW1uLWRpbS1yZWR1Y2VyLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy9tdWx0aS1jb2x1bW4tZGltZW5zaW9uYWxpdHktcmVkdWN0aW9uL211bGl0LWNvbHVtbi1kaW0tcmVkdWNlci13b3JrZXIuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vaW5kZXguanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vbGliL2FsZWEuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vbGliL3R5Y2hlaS5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvc2VlZHJhbmRvbS9saWIveG9yMTI4LmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9zZWVkcmFuZG9tL2xpYi94b3I0MDk2LmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9zZWVkcmFuZG9tL2xpYi94b3JzaGlmdDcuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vbGliL3hvcndvdy5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvc2VlZHJhbmRvbS9zZWVkcmFuZG9tLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpc3RhbmNlQWdncmVnYXRpb25NZXRob2RzIH0gZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgY29uc3QgaXNOaWwgPSAoeCkgPT4geCA9PT0gbnVsbCB8fCB4ID09PSB1bmRlZmluZWQ7XG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0U21hbGxlcihkaXN0YW5jZXNBciwgaW5kZXhlcywgbnVtLCBpbmRleCkge1xuICAgIGlmIChudW0gPiBkaXN0YW5jZXNBcltkaXN0YW5jZXNBci5sZW5ndGggLSAxXSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGNvbnN0IG5ld1Bvc2l0aW9uID0gZGlzdGFuY2VzQXIuZmluZEluZGV4KCh2KSA9PiBudW0gPCB2KTtcbiAgICBkaXN0YW5jZXNBci5wb3AoKTtcbiAgICBkaXN0YW5jZXNBci5zcGxpY2UobmV3UG9zaXRpb24sIDAsIG51bSk7XG4gICAgaW5kZXhlcy5wb3AoKTtcbiAgICBpbmRleGVzLnNwbGljZShuZXdQb3NpdGlvbiwgMCwgaW5kZXgpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGluc2VydExhcmdlcihkaXN0YW5jZXNBciwgaW5kZXhlcywgbnVtLCBpbmRleCkge1xuICAgIGlmIChudW0gPCBkaXN0YW5jZXNBcltkaXN0YW5jZXNBci5sZW5ndGggLSAxXSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGNvbnN0IG5ld1Bvc2l0aW9uID0gZGlzdGFuY2VzQXIuZmluZEluZGV4KCh2KSA9PiBudW0gPiB2KTtcbiAgICBkaXN0YW5jZXNBci5wb3AoKTtcbiAgICBkaXN0YW5jZXNBci5zcGxpY2UobmV3UG9zaXRpb24sIDAsIG51bSk7XG4gICAgaW5kZXhlcy5wb3AoKTtcbiAgICBpbmRleGVzLnNwbGljZShuZXdQb3NpdGlvbiwgMCwgaW5kZXgpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldEFnZ3JlZ2F0aW9uRnVuY3Rpb24oYWdncmVnYXRpb25NZXRob2QsIHdlaWdodHMpIHtcbiAgICBzd2l0Y2ggKGFnZ3JlZ2F0aW9uTWV0aG9kKSB7XG4gICAgICAgIGNhc2UgRGlzdGFuY2VBZ2dyZWdhdGlvbk1ldGhvZHMuTUFOSEFUVEFOOlxuICAgICAgICAgICAgcmV0dXJuICh2cykgPT4gdnMucmVkdWNlKChhY2MsIHZhbCwgaWR4KSA9PiBhY2MgKyB2YWwgKiB3ZWlnaHRzW2lkeF0sIDApO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuICh2cykgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGV1Y2xpZGVhblxuICAgICAgICAgICAgICAgIGNvbnN0IHN1bSA9IHZzLnJlZHVjZSgoYWNjLCB2YWwsIGlkeCkgPT4gYWNjICsgKHZhbCAqIHdlaWdodHNbaWR4XSkgKiogMiwgMCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIE1hdGguc3FydChzdW0pO1xuICAgICAgICAgICAgfTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkWFJwYkhNdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUoxZEdsc2N5NTBjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4UFFVRlBMRVZCUVRSQ0xEQkNRVUV3UWl4RlFVRkRMRTFCUVUwc1UwRkJVeXhEUVVGRE8wRkJSVGxGTEUxQlFVMHNRMEZCUXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4TFFVRkxMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzVTBGQlV5eERRVUZETzBGQlJTOUVMRTFCUVUwc1ZVRkJWU3hoUVVGaExFTkJRVU1zVjBGQmNVSXNSVUZCUlN4UFFVRnBRaXhGUVVGRkxFZEJRVmNzUlVGQlJTeExRVUZoTzBsQlEyaEhMRWxCUVVrc1IwRkJSeXhIUVVGSExGZEJRVmNzUTBGQlF5eFhRVUZYTEVOQlFVTXNUVUZCVFN4SFFVRkRMRU5CUVVNc1EwRkJRenRSUVVONlF5eFBRVUZQTzBsQlJWUXNUVUZCVFN4WFFVRlhMRWRCUVVjc1YwRkJWeXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlF6RkVMRmRCUVZjc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF6dEpRVU5zUWl4WFFVRlhMRU5CUVVNc1RVRkJUU3hEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRlRU1zVDBGQlR5eERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJRc1QwRkJUeXhEUVVGRExFMUJRVTBzUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXl4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRM2hETEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc1dVRkJXU3hEUVVGRExGZEJRWEZDTEVWQlFVVXNUMEZCYVVJc1JVRkJSU3hIUVVGWExFVkJRVVVzUzBGQllUdEpRVU12Uml4SlFVRkpMRWRCUVVjc1IwRkJSeXhYUVVGWExFTkJRVU1zVjBGQlZ5eERRVUZETEUxQlFVMHNSMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRla01zVDBGQlR6dEpRVVZVTEUxQlFVMHNWMEZCVnl4SFFVRkhMRmRCUVZjc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU14UkN4WFFVRlhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRGJFSXNWMEZCVnl4RFFVRkRMRTFCUVUwc1EwRkJReXhYUVVGWExFVkJRVVVzUTBGQlF5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTNoRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXp0SlFVTmtMRTlCUVU4c1EwRkJReXhOUVVGTkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJRenRCUVVONFF5eERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRlZMSE5DUVVGelFpeERRVU53UXl4cFFrRkJORU1zUlVGQlJTeFBRVUZwUWp0SlFVVXZSQ3hSUVVGUkxHbENRVUZwUWl4RlFVRkZPMUZCUTNwQ0xFdEJRVXNzTUVKQlFUQkNMRU5CUVVNc1UwRkJVenRaUVVOMlF5eFBRVUZQTEVOQlFVTXNSVUZCV1N4RlFVRkZMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJTeERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNKR08xbEJRMFVzVDBGQlR5eERRVUZETEVWQlFWa3NSVUZCUlN4RlFVRkZPMmRDUVVOMFFpeFpRVUZaTzJkQ1FVTmFMRTFCUVUwc1IwRkJSeXhIUVVGSExFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1IwRkJSeXhGUVVGRkxFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhIUVVGSExFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dG5Ra0ZETjBVc1QwRkJUeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUTNoQ0xFTkJRVU1zUTBGQlF6dExRVU5NTzBGQlEwZ3NRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCN1JHbHpkR0Z1WTJWQloyZHlaV2RoZEdsdmJrMWxkR2h2WkN3Z1JHbHpkR0Z1WTJWQloyZHlaV2RoZEdsdmJrMWxkR2h2WkhOOUlHWnliMjBnSnk0dmRIbHdaWE1uTzF4dVhHNWxlSEJ2Y25RZ1kyOXVjM1FnYVhOT2FXd2dQU0FvZURvZ1lXNTVLU0E5UGlCNElEMDlQU0J1ZFd4c0lIeDhJSGdnUFQwOUlIVnVaR1ZtYVc1bFpEdGNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR2x1YzJWeWRGTnRZV3hzWlhJb1pHbHpkR0Z1WTJWelFYSTZJRzUxYldKbGNsdGRMQ0JwYm1SbGVHVnpPaUJ1ZFcxaVpYSmJYU3dnYm5WdE9pQnVkVzFpWlhJc0lHbHVaR1Y0T2lCdWRXMWlaWElwSUh0Y2JpQWdhV1lnS0c1MWJTQStJR1JwYzNSaGJtTmxjMEZ5VzJScGMzUmhibU5sYzBGeUxteGxibWQwYUMweFhTbGNiaUFnSUNCeVpYUjFjbTQ3WEc1Y2JpQWdZMjl1YzNRZ2JtVjNVRzl6YVhScGIyNGdQU0JrYVhOMFlXNWpaWE5CY2k1bWFXNWtTVzVrWlhnb0tIWXBJRDArSUc1MWJTQThJSFlwTzF4dUlDQmthWE4wWVc1alpYTkJjaTV3YjNBb0tUdGNiaUFnWkdsemRHRnVZMlZ6UVhJdWMzQnNhV05sS0c1bGQxQnZjMmwwYVc5dUxDQXdMQ0J1ZFcwcE8xeHVJQ0JwYm1SbGVHVnpMbkJ2Y0NncE8xeHVJQ0JwYm1SbGVHVnpMbk53YkdsalpTaHVaWGRRYjNOcGRHbHZiaXdnTUN3Z2FXNWtaWGdwTzF4dWZWeHVYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdhVzV6WlhKMFRHRnlaMlZ5S0dScGMzUmhibU5sYzBGeU9pQnVkVzFpWlhKYlhTd2dhVzVrWlhobGN6b2diblZ0WW1WeVcxMHNJRzUxYlRvZ2JuVnRZbVZ5TENCcGJtUmxlRG9nYm5WdFltVnlLU0I3WEc0Z0lHbG1JQ2h1ZFcwZ1BDQmthWE4wWVc1alpYTkJjbHRrYVhOMFlXNWpaWE5CY2k1c1pXNW5kR2d0TVYwcFhHNGdJQ0FnY21WMGRYSnVPMXh1WEc0Z0lHTnZibk4wSUc1bGQxQnZjMmwwYVc5dUlEMGdaR2x6ZEdGdVkyVnpRWEl1Wm1sdVpFbHVaR1Y0S0NoMktTQTlQaUJ1ZFcwZ1BpQjJLVHRjYmlBZ1pHbHpkR0Z1WTJWelFYSXVjRzl3S0NrN1hHNGdJR1JwYzNSaGJtTmxjMEZ5TG5Od2JHbGpaU2h1WlhkUWIzTnBkR2x2Yml3Z01Dd2diblZ0S1R0Y2JpQWdhVzVrWlhobGN5NXdiM0FvS1R0Y2JpQWdhVzVrWlhobGN5NXpjR3hwWTJVb2JtVjNVRzl6YVhScGIyNHNJREFzSUdsdVpHVjRLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHZGxkRUZuWjNKbFoyRjBhVzl1Um5WdVkzUnBiMjRvWEc0Z0lHRm5aM0psWjJGMGFXOXVUV1YwYUc5a09pQkVhWE4wWVc1alpVRm5aM0psWjJGMGFXOXVUV1YwYUc5a0xDQjNaV2xuYUhSek9pQnVkVzFpWlhKYlhWeHVLVG9nS0haaGJIVmxjem9nYm5WdFltVnlXMTBwSUQwK0lHNTFiV0psY2lCN1hHNGdJSE4zYVhSamFDQW9ZV2RuY21WbllYUnBiMjVOWlhSb2IyUXBJSHRjYmlBZ0lDQmpZWE5sSUVScGMzUmhibU5sUVdkbmNtVm5ZWFJwYjI1TlpYUm9iMlJ6TGsxQlRraEJWRlJCVGpwY2JpQWdJQ0FnSUhKbGRIVnliaUFvZG5NNklHNTFiV0psY2x0ZEtTQTlQaUIyY3k1eVpXUjFZMlVvS0dGall5d2dkbUZzTENCcFpIZ3BJRDArSUdGall5QXJJSFpoYkNBcUlIZGxhV2RvZEhOYmFXUjRYU3dnTUNrN1hHNGdJQ0FnWkdWbVlYVnNkRHBjYmlBZ0lDQWdJSEpsZEhWeWJpQW9kbk02SUc1MWJXSmxjbHRkS1NBOVBpQjdYRzRnSUNBZ0lDQWdJQzh2SUdWMVkyeHBaR1ZoYmx4dUlDQWdJQ0FnSUNCamIyNXpkQ0J6ZFcwZ1BTQjJjeTV5WldSMVkyVW9LR0ZqWXl3Z2RtRnNMQ0JwWkhncElEMCtJR0ZqWXlBcklDaDJZV3dnS2lCM1pXbG5hSFJ6VzJsa2VGMHBJQ29xSURJc0lEQXBPMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdUV0YwYUM1emNYSjBLSE4xYlNrN1hHNGdJQ0FnSUNCOU8xeHVJQ0I5WEc1OVhHNGlYWDA9IiwiLyoqXG4gKiBEZW5vdGVzIGEgdmVjdG9yIG9mIGZsb2F0aW5nIHBvaXQgdmFsdWVzLlxuICpcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBWZWN0b3JcbiAqIEBleHRlbmRzIHtGbG9hdDMyQXJyYXl9XG4gKi9cbmV4cG9ydCBjbGFzcyBWZWN0b3IgZXh0ZW5kcyBGbG9hdDMyQXJyYXkge1xufVxuLyoqXG4gKiBEZW5vdGVzIGEgdHdvLWRpbWVuc2lvbmFsIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgTWF0cml4XG4gKiBAZXh0ZW5kcyB7QXJyYXk8VmVjdG9yPn1cbiAqL1xuZXhwb3J0IGNsYXNzIE1hdHJpeCBleHRlbmRzIEFycmF5IHtcbn1cbi8qKlxuICogRGVub3RlcyBjYXJ0ZXNpYW4gY29vcmRpbmF0ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQGNsYXNzIENvb3JkaW5hdGVzXG4gKiBAZXh0ZW5kcyB7TWF0cml4fVxuICovXG5leHBvcnQgY2xhc3MgQ29vcmRpbmF0ZXMgZXh0ZW5kcyBNYXRyaXgge1xufVxuLyoqXG4gKiBEZW5vdGVzIGFuIGFycmF5IG9mIGFyYml0cmFyeS10eXBlZCB2ZWN0b3JzLlxuICpcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBWZWN0b3JzXG4gKiBAZXh0ZW5kcyB7QXJyYXk8YW55Pn1cbiAqL1xuZXhwb3J0IGNsYXNzIFZlY3RvcnMgZXh0ZW5kcyBBcnJheSB7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkSGx3WlMxa1pXTnNZWEpoZEdsdmJuTXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMGVYQmxMV1JsWTJ4aGNtRjBhVzl1Y3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkZRVHM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEU5QlFVOHNUVUZCVHl4VFFVRlJMRmxCUVZrN1EwRkJSenRCUVVVelF6czdPenM3TzBkQlRVYzdRVUZEU0N4TlFVRk5MRTlCUVU4c1RVRkJUeXhUUVVGUkxFdEJRV0U3UTBGQlJ6dEJRVVUxUXpzN096czdPMGRCVFVjN1FVRkRTQ3hOUVVGTkxFOUJRVThzVjBGQldTeFRRVUZSTEUxQlFVMDdRMEZCUnp0QlFVVXhRenM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEU5QlFVOHNUMEZCVVN4VFFVRlJMRXRCUVZVN1EwRkJSeUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0FxSUdGeklFUkhJR1p5YjIwZ0oyUmhkR0ZuY205ckxXRndhUzlrWnljN1hHNWNiaThxS2x4dUlDb2dSR1Z1YjNSbGN5QmhJSFpsWTNSdmNpQnZaaUJtYkc5aGRHbHVaeUJ3YjJsMElIWmhiSFZsY3k1Y2JpQXFYRzRnS2lCQVpYaHdiM0owWEc0Z0tpQkFZMnhoYzNNZ1ZtVmpkRzl5WEc0Z0tpQkFaWGgwWlc1a2N5QjdSbXh2WVhRek1rRnljbUY1ZlZ4dUlDb3ZYRzVsZUhCdmNuUWdZMnhoYzNNZ1ZtVmpkRzl5SUdWNGRHVnVaSE1nUm14dllYUXpNa0Z5Y21GNUlIdDlYRzVjYmk4cUtseHVJQ29nUkdWdWIzUmxjeUJoSUhSM2J5MWthVzFsYm5OcGIyNWhiQ0J0WVhSeWFYZ3VYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUdOc1lYTnpJRTFoZEhKcGVGeHVJQ29nUUdWNGRHVnVaSE1nZTBGeWNtRjVQRlpsWTNSdmNqNTlYRzRnS2k5Y2JtVjRjRzl5ZENCamJHRnpjeUJOWVhSeWFYZ2daWGgwWlc1a2N5QkJjbkpoZVR4V1pXTjBiM0krSUh0OVhHNWNiaThxS2x4dUlDb2dSR1Z1YjNSbGN5QmpZWEowWlhOcFlXNGdZMjl2Y21ScGJtRjBaWE11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FHTnNZWE56SUVOdmIzSmthVzVoZEdWelhHNGdLaUJBWlhoMFpXNWtjeUI3VFdGMGNtbDRmVnh1SUNvdlhHNWxlSEJ2Y25RZ1kyeGhjM01nUTI5dmNtUnBibUYwWlhNZ1pYaDBaVzVrY3lCTllYUnlhWGdnZTMxY2JseHVMeW9xWEc0Z0tpQkVaVzV2ZEdWeklHRnVJR0Z5Y21GNUlHOW1JR0Z5WW1sMGNtRnllUzEwZVhCbFpDQjJaV04wYjNKekxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUJqYkdGemN5QldaV04wYjNKelhHNGdLaUJBWlhoMFpXNWtjeUI3UVhKeVlYazhZVzU1UG4xY2JpQXFMMXh1Wlhod2IzSjBJR05zWVhOeklGWmxZM1J2Y25NZ1pYaDBaVzVrY3lCQmNuSmhlVHhoYm5rK0lIdDlYRzVjYmk4cUtseHVJQ29nUkdWdWIzUmxjeUJoSUdScFkzUnBiMjVoY25rZ1kyOXVkR0ZwYm1sdVp5Qm1kVzVqZEdsdmJpQnZjSFJwYjI1ekxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUIwZVhCbElFOXdkR2x2Ym5OY2JpQXFMMXh1Wlhod2IzSjBJSFI1Y0dVZ1QzQjBhVzl1Y3lBOUlIdGJibUZ0WlRvZ2MzUnlhVzVuWFRvZ1lXNTVmVHRjYmx4dUx5b3FYRzRnS2lCRVpXNXZkR1Z6SUdOMWMzUnZiU0JrYVhOMFlXNWpaU0J0WlhSeWFXTWdZbVYwZDJWbGJpQjBhR1VnZEhkdklHZHBkbVZ1SUhabFkzUnZjbk11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIUjVjR1VnUkdsemRHRnVZMlZOWlhSeWFXTmNiaUFxSUVCd1lYSmhiU0I3WVc1NWZTQjJNU0JVYUdVZ1ptbHljM1FnZG1WamRHOXlMbHh1SUNvZ1FIQmhjbUZ0SUh0aGJubDlJSFl5SUZSb1pTQnpaV052Ym1RZ2RtVmpkRzl5TGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeWZTQkVhWE4wWVc1alpTQmlaWFIzWldWdUlIUm9aWE5sSUhSM2J5QjJaV04wYjNKekxseHVJQ292WEc1bGVIQnZjblFnZEhsd1pTQkVhWE4wWVc1alpVMWxkSEpwWXlBOUlDaDJNVG9nWVc1NUxDQjJNam9nWVc1NUtTQTlQaUFvYm5WdFltVnlLVHRjYmx4dUx5b3FYRzRnS2lCRVpXNXZkR1Z6SUdFZ2MybHRjR3hsSUhOMGNtbHVaeUIwYnlCemRISnBibWNnWkdsamRHbHZibUZ5ZVM1Y2JpQXFYRzRnS2lCQVpYaHdiM0owWEc0Z0tpQkFkSGx3WlNCVGRISnBibWRFYVdOMGFXOXVZWEo1WEc0Z0tpOWNibVY0Y0c5eWRDQjBlWEJsSUZOMGNtbHVaMFJwWTNScGIyNWhjbmtnUFNCN1cydGxlVG9nYzNSeWFXNW5YVG9nYzNSeWFXNW5mVHRjYmx4dVhHNWxlSEJ2Y25RZ2RIbHdaU0JEYjJ4MWJXNUpibkIxZEU5d2RHbHZibk1nUFNCN1hHNGdJQ0FnWm1sc2RHVnlQem9nS0dOdmJEb2dSRWN1UTI5c2RXMXVLU0E5UGlCaWIyOXNaV0Z1SUh3Z2JuVnNiRHRjYm4wN1hHNGlYWDA9IiwiaW1wb3J0IHsgVmVjdG9yIH0gZnJvbSAnLi90eXBlLWRlY2xhcmF0aW9ucyc7XG5pbXBvcnQgeyByYW5kb21GbG9hdCwgcmFuZG9tSW50IH0gZnJvbSAnLi9yYW5kb20nO1xuLyoqXG4gKiBBc3NlcnRzIGEgY29uZGl0aW9uIGJ5IHRocm93aW5nIGFuIEVycm9yLlxuICpcbiAqIEBleHBvcnRcbiAqIEBwYXJhbSB7Ym9vbGVhbn0gW2NvbmRpdGlvbj1mYWxzZV0gQ29uZGl0aW9uIHRvIGFzc2VydC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbbWVzc2FnZT0nQXNzZXJ0aW9uIGVycm9yLiddIE1lc3NhZ2UgdG8gb3V0cHV0LlxuICogQHRocm93cyB7RXJyb3J9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnQoY29uZGl0aW9uID0gZmFsc2UsIG1lc3NhZ2UgPSAnQXNzZXJ0aW9uIGVycm9yLicpIHtcbiAgICBpZiAoIWNvbmRpdGlvbilcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xufVxuLyoqXG4gKiBDcmVhdGVzIG5ldyB0d28tZGltZW5zaW9uYWwgYXJyYXkgYW5kIGZpbGxzIGl0IHdpdGggdGhlIHZhbHVlIGdpdmVuLlxuICpcbiAqIEBwYXJhbSB7bnVtYmVyfSBkaW1lbnNpb24xIFRoZSBmaXJzdCBkaW1lbnNpb24gb2YgdGhlIGNvb3JkaW5hdGVzIChudW1iZXIgb2Ygcm93cykuXG4gKiBAcGFyYW0ge251bWJlcn0gZGltZW5zaW9uMiBUaGUgc2Vjb25kIGRpbWVuc2lvbiBvZiB0aGUgY29vcmRpbmF0ZXMgKG51bWJlciBvZiBjb2x1bW5zKS5cbiAqIEBwYXJhbSB7bnVtYmVyfSBbZmlsbD0wXSBBIHZhbHVlIHRvIGZpbGwgdGhlIGNvb3JkaW5hdGVzIHdpdGguXG4gKiBAcmV0dXJuIHtDb29yZGluYXRlc30gQSB0d28tZGltZW5zaW9uYWwgZmlsbGVkIHdpdGggdGhlIHZhbHVlIGdpdmVuLlxuICogQHRvZG8gTWlnaHQgYmUgc2xvdyBzaW5jZSB1c2VkIEFycmF5Lm1hcC4gUHJvYmFibHkgbmVlZHMgcGVyZm9ybWFuY2UgcmV2aXNpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMiwgZmlsbCA9IDApIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KGRpbWVuc2lvbjEpLmZpbGwoZmlsbCkubWFwKCgpID0+IChuZXcgVmVjdG9yKGRpbWVuc2lvbjIpLmZpbGwoZmlsbCkpKTtcbn1cbi8qKlxuICogVHJhbnNwb3NlIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge01hdHJpeH0gbWF0cml4IFRoZSBtYXRyaXggdG8gYmUgdHJhbnNwb3NlZC5cbiAqIEByZXR1cm4ge01hdHJpeH0gVHJhbnNwb3NlZCBtYXRyaXguXG4gKiBAdG9kbyBNaWdodCBiZSBzbG93IHNpbmNlIHVzZWQgQXJyYXkubWFwLiBQcm9iYWJseSBuZWVkcyBwZXJmb3JtYW5jZSByZXZpc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zcG9zZU1hdHJpeChtYXRyaXgpIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KG1hdHJpeFswXS5sZW5ndGgpLmZpbGwoMClcbiAgICAgICAgLm1hcCgoXywgaSkgPT4gKG5ldyBWZWN0b3IobWF0cml4Lmxlbmd0aCkuZmlsbCgwKS5tYXAoKF8sIGopID0+IChtYXRyaXhbal1baV0pKSkpO1xufVxuLyoqXG4gKiBBZGRzIHR3byB2ZWN0b3JzIHdpdGggdGhlIHNlY29uZCBvbmUgdG8gYmUgbXVsdGlwbGllZCBieSB0aGUgZ2l2ZW4gcmF0aW8uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gcSBUaGUgc2Vjb25kIHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge251bWJlcn0gW211bHRpcGxpZXI9MV0gQSBtdWx0aXBsaWVyIHRvIGJlIHVzZWQgYmVmb3JlIHRoZSBzZWNvbmQgdmVjdG9yIGlzIGFkZGVkLlxuICogQHJldHVybiB7VmVjdG9yfSBOZXcgdmVjdG9yIGNvbnRhaW5lZCB0aGUgcmVzdWx0IG9mIG9wZXJhdGlvbiBwK211bHRpcGxpZXIqcS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckFkZChwLCBxLCBtdWx0aXBsaWVyID0gMSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IHAubGVuZ3RoO1xuICAgIGFzc2VydChuSXRlbXMgPT0gcS5sZW5ndGgsICdWZWN0b3IgbGVuZ3RocyBkbyBub3QgbWF0Y2guJyk7XG4gICAgY29uc3QgdG90YWwgPSBuZXcgVmVjdG9yKG5JdGVtcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwLmxlbmd0aDsgKytpKVxuICAgICAgICB0b3RhbFtpXSA9IHBbaV0gKyBtdWx0aXBsaWVyICogcVtpXTtcbiAgICByZXR1cm4gdG90YWw7XG59XG4vKipcbiAqIFN1bXMgdGhlIHZlY3RvcidzIGl0ZW1zLlxuICpcbiAqIEBwYXJhbSB7VmVjdG9yfSB2IFRoZSB2ZWN0b3IgdG8gYmUgc3VtbWVkLlxuICogQHJldHVybiB7bnVtYmVyfSBUaGUgdmVjdG9yJ3MgaXRlbXMgc3VtLlxuICovXG5mdW5jdGlvbiBpdGVtc1N1bSh2KSB7XG4gICAgbGV0IHRvdGFsID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsICs9IHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuLyoqXG4gKiBTdXFhcmVzIHRoZSB2ZWN0b3IncyBpdGVtcy5cbiAqXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gdiBUaGUgdmVjdG9yIHRvIHNxdWFyZS5cbiAqIEByZXR1cm4ge1ZlY3Rvcn0gQSBuZXcgdmVjdG9yIGNvbnRhaW5pbmcgdGhlIG9yaWdpbmFsJ3MgaXRlbXMgc3F1YXJlZC5cbiAqL1xuZnVuY3Rpb24gdmVjdG9yU3F1YXJlKHYpIHtcbiAgICBjb25zdCBuSXRlbXMgPSB2Lmxlbmd0aDtcbiAgICBjb25zdCB0b3RhbCA9IG5ldyBWZWN0b3Iobkl0ZW1zKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsW2ldID0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3Rvckxlbmd0aCh2KSB7XG4gICAgbGV0IHNxclN1bSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2Lmxlbmd0aDsgaSsrKVxuICAgICAgICBzcXJTdW0gKz0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIE1hdGguc3FydChzcXJTdW0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckRvdFByb2R1Y3QodjEsIHYyKSB7XG4gICAgaWYgKHYxLmxlbmd0aCAhPSB2Mi5sZW5ndGgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGRpbWVuc2lvbmFsaXR5IG9mIHRoZSB2ZWN0b3JzIG11c3QgbWF0Y2gnKTtcbiAgICBsZXQgcHJvZCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2MS5sZW5ndGg7IGkrKylcbiAgICAgICAgcHJvZCArPSB2MVtpXSAqIHYyW2ldO1xuICAgIHJldHVybiBwcm9kO1xufVxuLyoqXG4gKiBDcmVhdGVzIGEgbWF0cml4IGZpbGxlZCB3aXRoIHJhbmRvbSBmbG9hdGluZyBwb2ludCB2YWx1ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjEgVGhlIGZpcnN0IGRpbWVuc2lvbiBvZiB0aGUgbWF0cml4LlxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjIgVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIG1hdHJpeC5cbiAqIEBwYXJhbSB7bnVtYmVyfSBbc2NhbGU9MS5dIE1heCB2YWx1ZSBnaXZlbiBieSByYW5kb20gZ2VuZXJhdG9yLlxuICogQHJldHVybiB7TWF0cml4fSBBIG5ldyBtYXRyaXggZmlsbGVkIHdpdGggcmFuZG9tIGZsb2F0aW5nIHBvaW50ICB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWxsUmFuZG9tTWF0cml4KGRpbWVuc2lvbjEsIGRpbWVuc2lvbjIsIHNjYWxlID0gMS4pIHtcbiAgICBjb25zdCBtYXRyaXggPSBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMik7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkaW1lbnNpb24xOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBkaW1lbnNpb24yOyArK2opXG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSByYW5kb21GbG9hdChzY2FsZSk7XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXg7XG59XG4vKipcbiAqIENhbGN1bGF0ZXMgRXVjbGlkZWFuIGRpc3RhbmNlIGJldHdlZW4gdHdvIHZlY3RvcnMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3Rvci5cbiAqIEBwYXJhbSB7VmVjdG9yfSBxIFRoZSBzZWNvbmQgdmVjdG9yLlxuICogQHJldHVybiB7bnVtYmVyfSBFdWNsaWRlYW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgZ2l2ZW4gdmVjdG9ycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUV1Y2xpZGVhbkRpc3RhbmNlKHAsIHEpIHtcbiAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICBjb25zdCBsZW4gPSBwLmxlbmd0aDtcbiAgICBpZiAobGVuICE9PSBxLmxlbmd0aClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgZGltZW5zaW9uYWxpdHkgb2YgdGhlIHZlY3RvcnMgbXVzdCBtYXRjaCcpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyArK2kpXG4gICAgICAgIHJlc3VsdCArPSBNYXRoLnBvdygocFtpXSAtIHFbaV0pLCAyKTtcbiAgICByZXR1cm4gTWF0aC5zcXJ0KHJlc3VsdCk7XG59XG4vKipcbiAqIENyZWF0ZXMgYSBkaXN0YW5jZSBtYXRyaXggdXNpbmcgYSBjdXN0b20gZGlzdGFuY2UgZnVuY3Rpb24uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3JzfSBkYXRhIElucHV0IHZlY3RvcnMgdG8gY2FsY3VsYXRlIGRpc3RhbmNlcy5cbiAqIEBwYXJhbSB7RGlzdGFuY2VNZXRyaWN9IGRpc3RhbmNlIEN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqIEByZXR1cm4ge01hdHJpeH0gQ2FsY3VsYXRlZCBjdXN0b20gZGlzdGFuY2UgbWF0cml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY0Rpc3RhbmNlTWF0cml4KGRhdGEsIGRpc3RhbmNlKSB7XG4gICAgY29uc3Qgbkl0ZW1zID0gZGF0YS5sZW5ndGg7XG4gICAgY29uc3QgbWF0cml4ID0gaW5pdENvb3JkaW5hdGVzKG5JdGVtcywgbkl0ZW1zLCAwKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5JdGVtczsgKytpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IG5JdGVtczsgKytqKSB7XG4gICAgICAgICAgICBjb25zdCBkID0gKGRhdGFbaV0gPT0gbnVsbCkgfHwgKGRhdGFbal0gPT0gbnVsbCkgPyAwIDogZGlzdGFuY2UoZGF0YVtpXSwgZGF0YVtqXSk7XG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbal1baV0gPSBkO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXg7XG59XG4vKipcbiAqIENyZWF0ZXMgYSBkaXN0YW5jZSBtYXRyaXggdXNpbmcgYSBjdXN0b20gZGlzdGFuY2UgZnVuY3Rpb24uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3JzfSBkYXRhIElucHV0IHZlY3RvcnMgdG8gY2FsY3VsYXRlIGRpc3RhbmNlcy5cbiAqIEBwYXJhbSB7RGlzdGFuY2VNZXRyaWN9IGRpc3RhbmNlIEN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqIEByZXR1cm4ge01hdHJpeH0gQ2FsY3VsYXRlZCBjdXN0b20gZGlzdGFuY2UgbWF0cml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY05vcm1hbGl6ZWREaXN0YW5jZU1hdHJpeChkYXRhLCBkaXN0YW5jZSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IGRhdGEubGVuZ3RoO1xuICAgIGNvbnN0IG1hdHJpeCA9IGluaXRDb29yZGluYXRlcyhuSXRlbXMsIG5JdGVtcywgMCk7XG4gICAgbGV0IG1heCA9IE51bWJlci5NSU5fVkFMVUU7XG4gICAgbGV0IG1pbiA9IE51bWJlci5NQVhfVkFMVUU7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuSXRlbXM7ICsraSkge1xuICAgICAgICBmb3IgKGxldCBqID0gaTsgaiA8IG5JdGVtczsgKytqKSB7XG4gICAgICAgICAgICBjb25zdCBkID0gKGRhdGFbaV0gPT0gbnVsbCkgfHwgKGRhdGFbal0gPT0gbnVsbCB8fCBpID09PSBqKSA/IDAgOiBkaXN0YW5jZShkYXRhW2ldLCBkYXRhW2pdKTtcbiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IG1hdHJpeFtqXVtpXSA9IGQ7XG4gICAgICAgICAgICBpZiAoZCA+IG1heClcbiAgICAgICAgICAgICAgICBtYXggPSBkO1xuICAgICAgICAgICAgaWYgKGQgPCBtaW4pXG4gICAgICAgICAgICAgICAgbWluID0gZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5JdGVtczsgKytpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IG5JdGVtczsgKytqKVxuICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gbWF0cml4W2pdW2ldID0gKG1hdHJpeFtpXVtqXSAtIG1pbikgLyAobWF4IC0gbWluKTtcbiAgICB9XG4gICAgcmV0dXJuIG1hdHJpeDtcbn1cbi8qKiBHZW5lcmF0ZXMgYXJyYXkgZnJvbSBhIHJhbmdlIFtiZWdpbjsgZW5kXSBvciBbYmVnaW47IGVuZCkgaWYgZW5kRXhjbHVzaXZlLiAqKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5SYW5nZShiZWdpbiwgZW5kLCBlbmRFeGNsdXNpdmUgPSBmYWxzZSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IGVuZCAtIGJlZ2luICsgKGVuZEV4Y2x1c2l2ZSA/IDAgOiAxKTtcbiAgICBjb25zdCBzZXJpZXMgPSBuZXcgSW50MzJBcnJheShuSXRlbXMpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbkl0ZW1zOyArK2kpXG4gICAgICAgIHNlcmllc1tpXSA9IGJlZ2luICsgaTtcbiAgICByZXR1cm4gc2VyaWVzO1xufVxuLyoqXG4gKiBSZXR1cm5zIG9yZGVyIG9mIHZhbHVlcyBhcyBpZiB0aGV5IGFyZSBzb3J0ZWQuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHthbnlbXX0gdmFsdWVzIElucHV0IGFycmF5LlxuICogQHBhcmFtIHtib29sZWFufSBbcmV2ZXJzZT1mYWxzZV0gV2hldGhlciB0byByZXR1cm4gcmV2ZXJzZWQgb3JkZXIuXG4gKiBAcmV0dXJuIHtudW1iZXJbXX0gVGhlIG9yZGVyIGNvbXB1dGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXJnU29ydCh2YWx1ZXMsIHJldmVyc2UgPSBmYWxzZSkge1xuICAgIGNvbnN0IHNvcnRmbiA9IHJldmVyc2UgPyAoYSwgYikgPT4gKGJbMF0gLSBhWzBdKSA6IChhLCBiKSA9PiAoYVswXSAtIGJbMF0pO1xuICAgIGNvbnN0IGRlY29yID0gKHYsIGkpID0+IFt2LCBpXTsgLy8gc2V0IGluZGV4IHRvIHZhbHVlXG4gICAgY29uc3QgdW5kZWNvciA9IChhKSA9PiBhWzFdOyAvLyBsZWF2ZSBvbmx5IGluZGV4XG4gICAgY29uc3QgX2FyZ3NvcnQgPSAoYXJyKSA9PiBhcnIubWFwKGRlY29yKS5zb3J0KHNvcnRmbikubWFwKHVuZGVjb3IpO1xuICAgIHJldHVybiBfYXJnc29ydCh2YWx1ZXMpO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBpbmRleGVzIG9mIHRoZSBtb3N0IGRpdmVyc2Ugb2JqZWN0cyBhY2NvcmRpbmcgdG8gdGhlIGRpc3QgZnVuY3Rpb25cbiAqIEBwYXJhbSB7bnVtYmVyfSBsZW5ndGggdG90YWwgbnVtYmVyIG9mIG9iamVjdHNcbiAqIEBwYXJhbSB7bnVtYmVyfSBuIG51bWJlciBvZiBkaXZlcnNlIGVsZW1lbnRzIHRvIGZpbmRcbiAqIEBwYXJhbSB7KGkxOiBudW1iZXIsIGkyOiBudW1iZXIpID0+IG51bWJlcn0gZGlzdCBhIGZ1bmN0aW9uIHdoaWNoIGNhbGN1bGF0ZXMgZGlzdGFuY2UgYmV0d2VlblxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR3byBvYmplY3RzIHVzaW5nIHRoZWlyIGluZGV4ZXNcbiAqIEByZXR1cm5zIHtudW1iZXJbXX0gVGhlIGluZGV4ZXMgb2YgdGhlIG1vc3QgZGl2ZXJzZSBvYmplY3RzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREaXZlcnNlU3Vic2V0KGxlbmd0aCwgbiwgZGlzdCkge1xuICAgIGZ1bmN0aW9uIG1heEJ5KHZhbHVlcywgb3JkZXJCeSkge1xuICAgICAgICBsZXQgbWF4VmFsdWUgPSBudWxsO1xuICAgICAgICBsZXQgbWF4T3JkZXJCeSA9IG51bGw7XG4gICAgICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB2YWx1ZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRPcmRlckJ5ID0gb3JkZXJCeShlbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChtYXhPcmRlckJ5ID09IG51bGwgfHwgZWxlbWVudE9yZGVyQnkgPiBtYXhPcmRlckJ5KSB7XG4gICAgICAgICAgICAgICAgbWF4VmFsdWUgPSBlbGVtZW50O1xuICAgICAgICAgICAgICAgIG1heE9yZGVyQnkgPSBlbGVtZW50T3JkZXJCeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWF4VmFsdWU7XG4gICAgfVxuICAgIGNvbnN0IHN1YnNldCA9IFtyYW5kb21JbnQobGVuZ3RoIC0gMSldO1xuICAgIGNvbnN0IGNvbXBsZW1lbnQgPSBuZXcgU2V0KCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuICAgICAgICBpZiAoIXN1YnNldC5pbmNsdWRlcyhpKSlcbiAgICAgICAgICAgIGNvbXBsZW1lbnQuYWRkKGkpO1xuICAgIH1cbiAgICB3aGlsZSAoc3Vic2V0Lmxlbmd0aCA8IG4pIHtcbiAgICAgICAgY29uc3QgaWR4ID0gbWF4QnkoY29tcGxlbWVudC52YWx1ZXMoKSwgKGkpID0+IE1hdGgubWluLmFwcGx5KE1hdGgsIHN1YnNldC5tYXAoZnVuY3Rpb24gKHZhbCwgaW5kZXgpIHtcbiAgICAgICAgICAgIHJldHVybiBkaXN0KGksIHZhbCk7XG4gICAgICAgIH0pKSk7XG4gICAgICAgIGlmIChpZHgpIHtcbiAgICAgICAgICAgIHN1YnNldC5wdXNoKGlkeCk7XG4gICAgICAgICAgICBjb21wbGVtZW50LmRlbGV0ZShpZHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBzdWJzZXQ7XG59XG4vKipcbiAqIFJldHVybnMgbm9ybWFsaXplZCB2ZWN0b3IuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IGRhdGEgbnVtZXJpY2FsIGFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemUoZGF0YSkge1xuICAgIGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoO1xuICAgIGxldCBzdW0gPSAwO1xuICAgIGxldCBzdW1PZlNxdWFyZXMgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgc3VtICs9IGRhdGFbaV07XG4gICAgICAgIHN1bU9mU3F1YXJlcyArPSBNYXRoLnBvdyhkYXRhW2ldLCAyKTtcbiAgICB9XG4gICAgY29uc3QgbWVhbiA9IHN1bSAvIGxlbjtcbiAgICBjb25zdCBzdGREZXZJbnZlcnNlID0gMS4wIC8gTWF0aC5zcXJ0KHN1bU9mU3F1YXJlcyAvIGxlbiAtIE1hdGgucG93KG1lYW4sIDIpKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgKytpKVxuICAgICAgICBkYXRhW2ldID0gKGRhdGFbaV0gLSBtZWFuKSAqIHN0ZERldkludmVyc2U7XG4gICAgcmV0dXJuIGRhdGE7XG59XG4vKipcbiAqIEZpbmRzIHNldCBkaWZmZXJlbmNlIGJldHdlZW4gdHdvIGxpc3RzLlxuICogQHBhcmFtIHthbnlbXX0gYSBUaGUgZmlyc3QgbGlzdC5cbiAqIEBwYXJhbSB7YW55W119IGIgVGhlIHNlY29uZCBsaXN0LlxuICogQHJldHVybiB7YW55W119XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXREaWZmZXJlbmNlKGEsIGIpIHtcbiAgICBjb25zdCBiU2V0ID0gbmV3IFNldChiKTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShuZXcgU2V0KGEuZmlsdGVyKCh4KSA9PiAhYlNldC5oYXMoeCkpKS52YWx1ZXMoKSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkbVZqZEc5eUxXOXdaWEpoZEdsdmJuTXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMlpXTjBiM0l0YjNCbGNtRjBhVzl1Y3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRU3hQUVVGUExFVkJRVk1zVFVGQlRTeEZRVUYxUXl4TlFVRk5MSEZDUVVGeFFpeERRVUZETzBGQlEzcEdMRTlCUVU4c1JVRkJReXhYUVVGWExFVkJRVVVzVTBGQlV5eEZRVUZETEUxQlFVMHNWVUZCVlN4RFFVRkRPMEZCUldoRU96czdPenM3TzBkQlQwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1RVRkJUU3hEUVVGRExGbEJRWEZDTEV0QlFVc3NSVUZCUlN4VlFVRnJRaXhyUWtGQmEwSTdTVUZEY2tZc1NVRkJTU3hEUVVGRExGTkJRVk03VVVGRFdpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8wRkJRemRDTEVOQlFVTTdRVUZGUkRzN096czdPenM3UjBGUlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4bFFVRmxMRU5CUVVNc1ZVRkJhMElzUlVGQlJTeFZRVUZyUWl4RlFVRkZMRTlCUVdVc1EwRkJRenRKUVVOMFJpeFBRVUZQTEVsQlFVa3NTMEZCU3l4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEpRVUZKTEUxQlFVMHNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTNwR0xFTkJRVU03UVVGRlJEczdPenM3T3p0SFFVOUhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHVkJRV1VzUTBGQlF5eE5RVUZqTzBsQlF6VkRMRTlCUVU4c1NVRkJTU3hMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdVMEZEZGtNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFMUJRVTBzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRkRVlzUTBGQlF6dEJRVVZFT3pzN096czdPenRIUVZGSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEZOQlFWTXNRMEZCUXl4RFFVRlRMRVZCUVVVc1EwRkJVeXhGUVVGRkxHRkJRWEZDTEVOQlFVTTdTVUZEY0VVc1RVRkJUU3hOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXp0SlFVVjRRaXhOUVVGTkxFTkJRVU1zVFVGQlRTeEpRVUZKTEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc09FSkJRVGhDTEVOQlFVTXNRMEZCUXp0SlFVVXpSQ3hOUVVGTkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEUxQlFVMHNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRKUVVWcVF5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNN1VVRkRMMElzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFZRVUZWTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJSWFJETEU5QlFVOHNTMEZCU3l4RFFVRkRPMEZCUTJZc1EwRkJRenRCUVVWRU96czdPenRIUVV0SE8wRkJRMGdzVTBGQlV5eFJRVUZSTEVOQlFVTXNRMEZCVXp0SlFVTjZRaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZGWkN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU03VVVGREwwSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVZvUWl4UFFVRlBMRXRCUVVzc1EwRkJRenRCUVVObUxFTkJRVU03UVVGRlJEczdPenM3UjBGTFJ6dEJRVU5JTEZOQlFWTXNXVUZCV1N4RFFVRkRMRU5CUVZNN1NVRkROMElzVFVGQlRTeE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVONFFpeE5RVUZOTEV0QlFVc3NSMEZCUnl4SlFVRkpMRTFCUVUwc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVVZxUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU03VVVGREwwSXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmVrSXNUMEZCVHl4TFFVRkxMRU5CUVVNN1FVRkRaaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEZsQlFWa3NRMEZCUXl4RFFVRlRPMGxCUTNCRExFbEJRVWtzVFVGQlRTeEhRVUZYTEVOQlFVTXNRMEZCUXp0SlFVTjJRaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZYTEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVTdVVUZEZGtNc1RVRkJUU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGVFSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBGQlF6TkNMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzWjBKQlFXZENMRU5CUVVNc1JVRkJWU3hGUVVGRkxFVkJRVlU3U1VGRGNrUXNTVUZCU1N4RlFVRkZMRU5CUVVNc1RVRkJUU3hKUVVGSkxFVkJRVVVzUTBGQlF5eE5RVUZOTzFGQlEzaENMRTFCUVUwc1NVRkJTU3hMUVVGTExFTkJRVU1zT0VOQlFUaERMRU5CUVVNc1EwRkJRenRKUVVOc1JTeEpRVUZKTEVsQlFVa3NSMEZCVnl4RFFVRkRMRU5CUVVNN1NVRkRja0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCVnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUTNoRExFbEJRVWtzU1VGQlNTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzaENMRTlCUVU4c1NVRkJTU3hEUVVGRE8wRkJRMlFzUTBGQlF6dEJRVVZFT3pzN096czdPenRIUVZGSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVGRExGVkJRV3RDTEVWQlFVVXNWVUZCYTBJc1JVRkJSU3hSUVVGblFpeEZRVUZGTzBsQlEzcEdMRTFCUVUwc1RVRkJUU3hIUVVGSExHVkJRV1VzUTBGQlF5eFZRVUZWTEVWQlFVVXNWVUZCVlN4RFFVRkRMRU5CUVVNN1NVRkZka1FzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTnVReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1ZVRkJWU3hGUVVGRkxFVkJRVVVzUTBGQlF6dFpRVU5xUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NWMEZCVnl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wdEJRM0pETzBsQlEwUXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzTUVKQlFUQkNMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk03U1VGRE4wUXNTVUZCU1N4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMllzVFVGQlRTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVWeVFpeEpRVUZKTEVkQlFVY3NTMEZCU3l4RFFVRkRMRU5CUVVNc1RVRkJUVHRSUVVOc1FpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRGhEUVVFNFF5eERRVUZETEVOQlFVTTdTVUZGYkVVc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRWRCUVVjc1JVRkJSU3hGUVVGRkxFTkJRVU03VVVGRE1VSXNUVUZCVFN4SlFVRkpMRk5CUVVFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVWtzUTBGQlF5eERRVUZCTEVOQlFVTTdTVUZGTDBJc1QwRkJUeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMEZCUXpOQ0xFTkJRVU03UVVGRlJEczdPenM3T3p0SFFVOUhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHdENRVUZyUWl4RFFVRkRMRWxCUVdFc1JVRkJSU3hSUVVGM1FqdEpRVU40UlN4TlFVRk5MRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETzBsQlF6TkNMRTFCUVUwc1RVRkJUU3hIUVVGSExHVkJRV1VzUTBGQlF5eE5RVUZOTEVWQlFVVXNUVUZCVFN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJSV3hFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkRMMElzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1dVRkRia01zVFVGQlRTeERRVUZETEVkQlFWY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTXhSaXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRUUVVOcVF6dExRVU5HTzBsQlEwUXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzTkVKQlFUUkNMRU5CUVVNc1NVRkJZU3hGUVVGRkxGRkJRWGRDTzBsQlEyeEdMRTFCUVUwc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTTdTVUZETTBJc1RVRkJUU3hOUVVGTkxFZEJRVWNzWlVGQlpTeERRVUZETEUxQlFVMHNSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGJFUXNTVUZCU1N4SFFVRkhMRWRCUVVjc1RVRkJUU3hEUVVGRExGTkJRVk1zUTBGQlF6dEpRVU16UWl4SlFVRkpMRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zVTBGQlV5eERRVUZETzBsQlF6TkNMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRExFVkJRVVU3VVVGREwwSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSVHRaUVVNdlFpeE5RVUZOTEVOQlFVTXNSMEZCVnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRGNrY3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZEYUVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUjBGQlJ6dG5Ra0ZCUlN4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRM0pDTEVsQlFVa3NRMEZCUXl4SFFVRkhMRWRCUVVjN1owSkJRVVVzUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0VFFVTjBRanRMUVVOR08wbEJRMFFzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTXZRaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTTdXVUZEYWtNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0TFFVTndSVHRKUVVORUxFOUJRVThzVFVGQlRTeERRVUZETzBGQlEyaENMRU5CUVVNN1FVRkZSQ3hyUmtGQmEwWTdRVUZEYkVZc1RVRkJUU3hWUVVGVkxGRkJRVkVzUTBGQlF5eExRVUZoTEVWQlFVVXNSMEZCVnl4RlFVRkZMRmxCUVZrc1IwRkJSeXhMUVVGTE8wbEJRM1pGTEUxQlFVMHNUVUZCVFN4SFFVRkhMRWRCUVVjc1IwRkJSeXhMUVVGTExFZEJRVWNzUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEY0VRc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeFZRVUZWTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1NVRkZkRU1zUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTTdVVUZETjBJc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEV0QlFVc3NSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkZlRUlzVDBGQlR5eE5RVUZOTEVOQlFVTTdRVUZEYUVJc1EwRkJRenRCUVVWRU96czdPenM3TzBkQlQwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1QwRkJUeXhEUVVGRExFMUJRV0VzUlVGQlJTeFBRVUZQTEVkQlFVY3NTMEZCU3p0SlFVTndSQ3hOUVVGTkxFMUJRVTBzUjBGQlJ5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJVU3hGUVVGRkxFTkJRVkVzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlVTeEZRVUZGTEVOQlFWRXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGRrY3NUVUZCVFN4TFFVRkxMRWRCUVVjc1EwRkJReXhEUVVGTkxFVkJRVVVzUTBGQlV5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEhGQ1FVRnhRanRKUVVOc1JTeE5RVUZOTEU5QlFVOHNSMEZCUnl4RFFVRkRMRU5CUVZFc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc2JVSkJRVzFDTzBsQlEzWkVMRTFCUVUwc1VVRkJVU3hIUVVGSExFTkJRVU1zUjBGQlZTeEZRVUZGTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZETVVVc1QwRkJUeXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdRVUZETVVJc1EwRkJRenRCUVVWRU96czdPenM3TzBkQlQwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1owSkJRV2RDTEVOQlFVTXNUVUZCWXl4RlFVRkZMRU5CUVZNc1JVRkJSU3hKUVVGM1F6dEpRVU5zUnl4VFFVRlRMRXRCUVVzc1EwRkJReXhOUVVGblF5eEZRVUZGTEU5QlFUaENPMUZCUXpkRkxFbEJRVWtzVVVGQlVTeEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVTndRaXhKUVVGSkxGVkJRVlVzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZGZEVJc1MwRkJTeXhOUVVGTkxFOUJRVThzU1VGQlNTeE5RVUZOTEVWQlFVVTdXVUZETlVJc1RVRkJUU3hqUVVGakxFZEJRVWNzVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRPMWxCUTNoRExFbEJRVWtzVlVGQlZTeEpRVUZKTEVsQlFVa3NTVUZCU1N4alFVRmpMRWRCUVVjc1ZVRkJWU3hGUVVGRk8yZENRVU55UkN4UlFVRlJMRWRCUVVjc1QwRkJUeXhEUVVGRE8yZENRVU51UWl4VlFVRlZMRWRCUVVjc1kwRkJZeXhEUVVGRE8yRkJRemRDTzFOQlEwWTdVVUZEUkN4UFFVRlBMRkZCUVZFc1EwRkJRenRKUVVOc1FpeERRVUZETzBsQlJVUXNUVUZCVFN4TlFVRk5MRWRCUVVjc1EwRkJReXhUUVVGVExFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRka01zVFVGQlRTeFZRVUZWTEVkQlFVY3NTVUZCU1N4SFFVRkhMRVZCUVVVc1EwRkJRenRKUVVVM1FpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUXk5Q0xFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOeVFpeFZRVUZWTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wdEJRM0pDTzBsQlJVUXNUMEZCVHl4TlFVRk5MRU5CUVVNc1RVRkJUU3hIUVVGSExFTkJRVU1zUlVGQlJUdFJRVU40UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhMUVVGTExFTkJRMllzVlVGQlZTeERRVUZETEUxQlFVMHNSVUZCT0VJc1JVRkRMME1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NSVUZCUlN4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExGVkJRVk1zUjBGQlJ5eEZRVUZGTEV0QlFVczdXVUZEZUVRc1QwRkJUeXhKUVVGSkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTNSQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTlFMRWxCUVVrc1IwRkJSeXhGUVVGRk8xbEJRMUFzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRaUVVOcVFpeFZRVUZWTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xTkJRM2hDTzB0QlEwWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPenM3TzBkQlMwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1UwRkJVeXhEUVVGRExFbEJRVms3U1VGRGNFTXNUVUZCVFN4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF6dEpRVU40UWl4SlFVRkpMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRFdpeEpRVUZKTEZsQlFWa3NSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkZja0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTTFRaXhIUVVGSExFbEJRVWtzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTJZc1dVRkJXU3hKUVVGSkxGTkJRVUVzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkpMRU5CUVVNc1EwRkJRU3hEUVVGRE8wdEJRemxDTzBsQlJVUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUTBGQlF6dEpRVU4yUWl4TlFVRk5MR0ZCUVdFc1IwRkJSeXhIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4WlFVRlpMRWRCUVVjc1IwRkJSeXhIUVVGSExGTkJRVUVzU1VGQlNTeEZRVUZKTEVOQlFVTXNRMEZCUVN4RFFVRkRMRU5CUVVNN1NVRkZkRVVzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTTdVVUZETVVJc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEdGQlFXRXNRMEZCUXp0SlFVVTNReXhQUVVGUExFbEJRVWtzUTBGQlF6dEJRVU5rTEVOQlFVTTdRVUZGUkRzN096czdSMEZMUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hoUVVGaExFTkJRVU1zUTBGQlVTeEZRVUZGTEVOQlFWRTdTVUZET1VNc1RVRkJUU3hKUVVGSkxFZEJRVWNzU1VGQlNTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRlRUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTnlSU3hEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lhVzF3YjNKMElIdE5ZWFJ5YVhnc0lGWmxZM1J2Y2l3Z1EyOXZjbVJwYm1GMFpYTXNJRlpsWTNSdmNuTXNJRVJwYzNSaGJtTmxUV1YwY21samZTQm1jbTl0SUNjdUwzUjVjR1V0WkdWamJHRnlZWFJwYjI1ekp6dGNibWx0Y0c5eWRDQjdjbUZ1Wkc5dFJteHZZWFFzSUhKaGJtUnZiVWx1ZEgwZ1puSnZiU0FuTGk5eVlXNWtiMjBuTzF4dVhHNHZLaXBjYmlBcUlFRnpjMlZ5ZEhNZ1lTQmpiMjVrYVhScGIyNGdZbmtnZEdoeWIzZHBibWNnWVc0Z1JYSnliM0l1WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIQmhjbUZ0SUh0aWIyOXNaV0Z1ZlNCYlkyOXVaR2wwYVc5dVBXWmhiSE5sWFNCRGIyNWthWFJwYjI0Z2RHOGdZWE56WlhKMExseHVJQ29nUUhCaGNtRnRJSHR6ZEhKcGJtZDlJRnR0WlhOellXZGxQU2RCYzNObGNuUnBiMjRnWlhKeWIzSXVKMTBnVFdWemMyRm5aU0IwYnlCdmRYUndkWFF1WEc0Z0tpQkFkR2h5YjNkeklIdEZjbkp2Y24xY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR0Z6YzJWeWRDaGpiMjVrYVhScGIyNDZJR0p2YjJ4bFlXNGdQU0JtWVd4elpTd2diV1Z6YzJGblpUb2djM1J5YVc1bklEMGdKMEZ6YzJWeWRHbHZiaUJsY25KdmNpNG5LU0I3WEc0Z0lHbG1JQ2doWTI5dVpHbDBhVzl1S1Z4dUlDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpaHRaWE56WVdkbEtUdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUc1bGR5QjBkMjh0WkdsdFpXNXphVzl1WVd3Z1lYSnlZWGtnWVc1a0lHWnBiR3h6SUdsMElIZHBkR2dnZEdobElIWmhiSFZsSUdkcGRtVnVMbHh1SUNwY2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZTQmthVzFsYm5OcGIyNHhJRlJvWlNCbWFYSnpkQ0JrYVcxbGJuTnBiMjRnYjJZZ2RHaGxJR052YjNKa2FXNWhkR1Z6SUNodWRXMWlaWElnYjJZZ2NtOTNjeWt1WEc0Z0tpQkFjR0Z5WVcwZ2UyNTFiV0psY24wZ1pHbHRaVzV6YVc5dU1pQlVhR1VnYzJWamIyNWtJR1JwYldWdWMybHZiaUJ2WmlCMGFHVWdZMjl2Y21ScGJtRjBaWE1nS0c1MWJXSmxjaUJ2WmlCamIyeDFiVzV6S1M1Y2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZTQmJabWxzYkQwd1hTQkJJSFpoYkhWbElIUnZJR1pwYkd3Z2RHaGxJR052YjNKa2FXNWhkR1Z6SUhkcGRHZ3VYRzRnS2lCQWNtVjBkWEp1SUh0RGIyOXlaR2x1WVhSbGMzMGdRU0IwZDI4dFpHbHRaVzV6YVc5dVlXd2dabWxzYkdWa0lIZHBkR2dnZEdobElIWmhiSFZsSUdkcGRtVnVMbHh1SUNvZ1FIUnZaRzhnVFdsbmFIUWdZbVVnYzJ4dmR5QnphVzVqWlNCMWMyVmtJRUZ5Y21GNUxtMWhjQzRnVUhKdlltRmliSGtnYm1WbFpITWdjR1Z5Wm05eWJXRnVZMlVnY21WMmFYTnBiMjR1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnBibWwwUTI5dmNtUnBibUYwWlhNb1pHbHRaVzV6YVc5dU1Ub2diblZ0WW1WeUxDQmthVzFsYm5OcGIyNHlPaUJ1ZFcxaVpYSXNJR1pwYkd3NklHNTFiV0psY2lBOUlEQXBPaUJEYjI5eVpHbHVZWFJsY3lCN1hHNGdJSEpsZEhWeWJpQnVaWGNnUVhKeVlYa29aR2x0Wlc1emFXOXVNU2t1Wm1sc2JDaG1hV3hzS1M1dFlYQW9LQ2tnUFQ0Z0tHNWxkeUJXWldOMGIzSW9aR2x0Wlc1emFXOXVNaWt1Wm1sc2JDaG1hV3hzS1NrcE8xeHVmVnh1WEc0dktpcGNiaUFxSUZSeVlXNXpjRzl6WlNCdFlYUnlhWGd1WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIQmhjbUZ0SUh0TllYUnlhWGg5SUcxaGRISnBlQ0JVYUdVZ2JXRjBjbWw0SUhSdklHSmxJSFJ5WVc1emNHOXpaV1F1WEc0Z0tpQkFjbVYwZFhKdUlIdE5ZWFJ5YVhoOUlGUnlZVzV6Y0c5elpXUWdiV0YwY21sNExseHVJQ29nUUhSdlpHOGdUV2xuYUhRZ1ltVWdjMnh2ZHlCemFXNWpaU0IxYzJWa0lFRnljbUY1TG0xaGNDNGdVSEp2WW1GaWJIa2dibVZsWkhNZ2NHVnlabTl5YldGdVkyVWdjbVYyYVhOcGIyNHVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCMGNtRnVjM0J2YzJWTllYUnlhWGdvYldGMGNtbDRPaUJOWVhSeWFYZ3BPaUJOWVhSeWFYZ2dlMXh1SUNCeVpYUjFjbTRnYm1WM0lFRnljbUY1S0cxaGRISnBlRnN3WFM1c1pXNW5kR2dwTG1acGJHd29NQ2xjYmlBZ0lDQXViV0Z3S0NoZkxDQnBLU0E5UGlBb2JtVjNJRlpsWTNSdmNpaHRZWFJ5YVhndWJHVnVaM1JvS1M1bWFXeHNLREFwTG0xaGNDZ29YeXdnYWlrZ1BUNGdLRzFoZEhKcGVGdHFYVnRwWFNrcEtTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1FXUmtjeUIwZDI4Z2RtVmpkRzl5Y3lCM2FYUm9JSFJvWlNCelpXTnZibVFnYjI1bElIUnZJR0psSUcxMWJIUnBjR3hwWldRZ1lua2dkR2hsSUdkcGRtVnVJSEpoZEdsdkxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUJ3WVhKaGJTQjdWbVZqZEc5eWZTQndJRlJvWlNCbWFYSnpkQ0IyWldOMGIzSWdkRzhnWVdSa0xseHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSjlJSEVnVkdobElITmxZMjl1WkNCMlpXTjBiM0lnZEc4Z1lXUmtMbHh1SUNvZ1FIQmhjbUZ0SUh0dWRXMWlaWEo5SUZ0dGRXeDBhWEJzYVdWeVBURmRJRUVnYlhWc2RHbHdiR2xsY2lCMGJ5QmlaU0IxYzJWa0lHSmxabTl5WlNCMGFHVWdjMlZqYjI1a0lIWmxZM1J2Y2lCcGN5QmhaR1JsWkM1Y2JpQXFJRUJ5WlhSMWNtNGdlMVpsWTNSdmNuMGdUbVYzSUhabFkzUnZjaUJqYjI1MFlXbHVaV1FnZEdobElISmxjM1ZzZENCdlppQnZjR1Z5WVhScGIyNGdjQ3R0ZFd4MGFYQnNhV1Z5S25FdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIyWldOMGIzSkJaR1FvY0RvZ1ZtVmpkRzl5TENCeE9pQldaV04wYjNJc0lHMTFiSFJwY0d4cFpYSTZJRzUxYldKbGNpQTlJREVwT2lCV1pXTjBiM0lnZTF4dUlDQmpiMjV6ZENCdVNYUmxiWE1nUFNCd0xteGxibWQwYUR0Y2JseHVJQ0JoYzNObGNuUW9ia2wwWlcxeklEMDlJSEV1YkdWdVozUm9MQ0FuVm1WamRHOXlJR3hsYm1kMGFITWdaRzhnYm05MElHMWhkR05vTGljcE8xeHVYRzRnSUdOdmJuTjBJSFJ2ZEdGc0lEMGdibVYzSUZabFkzUnZjaWh1U1hSbGJYTXBPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2djQzVzWlc1bmRHZzdJQ3NyYVNsY2JpQWdJQ0IwYjNSaGJGdHBYU0E5SUhCYmFWMGdLeUJ0ZFd4MGFYQnNhV1Z5SUNvZ2NWdHBYVHRjYmx4dUlDQnlaWFIxY200Z2RHOTBZV3c3WEc1OVhHNWNiaThxS2x4dUlDb2dVM1Z0Y3lCMGFHVWdkbVZqZEc5eUozTWdhWFJsYlhNdVhHNGdLbHh1SUNvZ1FIQmhjbUZ0SUh0V1pXTjBiM0o5SUhZZ1ZHaGxJSFpsWTNSdmNpQjBieUJpWlNCemRXMXRaV1F1WEc0Z0tpQkFjbVYwZFhKdUlIdHVkVzFpWlhKOUlGUm9aU0IyWldOMGIzSW5jeUJwZEdWdGN5QnpkVzB1WEc0Z0tpOWNibVoxYm1OMGFXOXVJR2wwWlcxelUzVnRLSFk2SUZabFkzUnZjaWs2SUc1MWJXSmxjaUI3WEc0Z0lHeGxkQ0IwYjNSaGJDQTlJREE3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0IyTG14bGJtZDBhRHNnS3l0cEtWeHVJQ0FnSUhSdmRHRnNJQ3M5SUhaYmFWMDdYRzVjYmlBZ2NtVjBkWEp1SUhSdmRHRnNPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGTjFjV0Z5WlhNZ2RHaGxJSFpsWTNSdmNpZHpJR2wwWlcxekxseHVJQ3BjYmlBcUlFQndZWEpoYlNCN1ZtVmpkRzl5ZlNCMklGUm9aU0IyWldOMGIzSWdkRzhnYzNGMVlYSmxMbHh1SUNvZ1FISmxkSFZ5YmlCN1ZtVmpkRzl5ZlNCQklHNWxkeUIyWldOMGIzSWdZMjl1ZEdGcGJtbHVaeUIwYUdVZ2IzSnBaMmx1WVd3bmN5QnBkR1Z0Y3lCemNYVmhjbVZrTGx4dUlDb3ZYRzVtZFc1amRHbHZiaUIyWldOMGIzSlRjWFZoY21Vb2Rqb2dWbVZqZEc5eUtUb2dWbVZqZEc5eUlIdGNiaUFnWTI5dWMzUWdia2wwWlcxeklEMGdkaTVzWlc1bmRHZzdYRzRnSUdOdmJuTjBJSFJ2ZEdGc0lEMGdibVYzSUZabFkzUnZjaWh1U1hSbGJYTXBPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dkaTVzWlc1bmRHZzdJQ3NyYVNsY2JpQWdJQ0IwYjNSaGJGdHBYU0E5SUhaYmFWMGdLaUIyVzJsZE8xeHVYRzRnSUhKbGRIVnliaUIwYjNSaGJEdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUhabFkzUnZja3hsYm1kMGFDaDJPaUJXWldOMGIzSXBPaUJ1ZFcxaVpYSWdlMXh1SUNCc1pYUWdjM0Z5VTNWdE9pQnVkVzFpWlhJZ1BTQXdPMXh1SUNCbWIzSWdLR3hsZENCcE9pQnVkVzFpWlhJZ1BTQXdPeUJwSUR3Z2RpNXNaVzVuZEdnN0lHa3JLeWxjYmlBZ0lDQnpjWEpUZFcwZ0t6MGdkbHRwWFNBcUlIWmJhVjA3WEc0Z0lISmxkSFZ5YmlCTllYUm9Mbk54Y25Rb2MzRnlVM1Z0S1R0Y2JuMWNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSFpsWTNSdmNrUnZkRkJ5YjJSMVkzUW9kakU2SUZabFkzUnZjaXdnZGpJNklGWmxZM1J2Y2lrNklHNTFiV0psY2lCN1hHNGdJR2xtSUNoMk1TNXNaVzVuZEdnZ0lUMGdkakl1YkdWdVozUm9LVnh1SUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2lnblZHaGxJR1JwYldWdWMybHZibUZzYVhSNUlHOW1JSFJvWlNCMlpXTjBiM0p6SUcxMWMzUWdiV0YwWTJnbktUdGNiaUFnYkdWMElIQnliMlE2SUc1MWJXSmxjaUE5SURBN1hHNGdJR1p2Y2lBb2JHVjBJR2s2SUc1MWJXSmxjaUE5SURBN0lHa2dQQ0IyTVM1c1pXNW5kR2c3SUdrckt5bGNiaUFnSUNCd2NtOWtJQ3M5SUhZeFcybGRJQ29nZGpKYmFWMDdYRzRnSUhKbGRIVnliaUJ3Y205a08xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nWVNCdFlYUnlhWGdnWm1sc2JHVmtJSGRwZEdnZ2NtRnVaRzl0SUdac2IyRjBhVzVuSUhCdmFXNTBJSFpoYkhWbGN5NWNiaUFxWEc0Z0tpQkFaWGh3YjNKMFhHNGdLaUJBY0dGeVlXMGdlMjUxYldKbGNuMGdaR2x0Wlc1emFXOXVNU0JVYUdVZ1ptbHljM1FnWkdsdFpXNXphVzl1SUc5bUlIUm9aU0J0WVhSeWFYZ3VYRzRnS2lCQWNHRnlZVzBnZTI1MWJXSmxjbjBnWkdsdFpXNXphVzl1TWlCVWFHVWdjMlZqYjI1a0lHUnBiV1Z1YzJsdmJpQnZaaUIwYUdVZ2JXRjBjbWw0TGx4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlGdHpZMkZzWlQweExsMGdUV0Y0SUhaaGJIVmxJR2RwZG1WdUlHSjVJSEpoYm1SdmJTQm5aVzVsY21GMGIzSXVYRzRnS2lCQWNtVjBkWEp1SUh0TllYUnlhWGg5SUVFZ2JtVjNJRzFoZEhKcGVDQm1hV3hzWldRZ2QybDBhQ0J5WVc1a2IyMGdabXh2WVhScGJtY2djRzlwYm5RZ0lIWmhiSFZsY3k1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR1pwYkd4U1lXNWtiMjFOWVhSeWFYZ29aR2x0Wlc1emFXOXVNVG9nYm5WdFltVnlMQ0JrYVcxbGJuTnBiMjR5T2lCdWRXMWlaWElzSUhOallXeGxPaUJ1ZFcxaVpYSWdQU0F4TGlrNklFMWhkSEpwZUNCN1hHNGdJR052Ym5OMElHMWhkSEpwZUNBOUlHbHVhWFJEYjI5eVpHbHVZWFJsY3loa2FXMWxibk5wYjI0eExDQmthVzFsYm5OcGIyNHlLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR1JwYldWdWMybHZiakU3SUNzcmFTa2dlMXh1SUNBZ0lHWnZjaUFvYkdWMElHb2dQU0F3T3lCcUlEd2daR2x0Wlc1emFXOXVNanNnS3l0cUtWeHVJQ0FnSUNBZ2JXRjBjbWw0VzJsZFcycGRJRDBnY21GdVpHOXRSbXh2WVhRb2MyTmhiR1VwTzF4dUlDQjlYRzRnSUhKbGRIVnliaUJ0WVhSeWFYZzdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EyRnNZM1ZzWVhSbGN5QkZkV05zYVdSbFlXNGdaR2x6ZEdGdVkyVWdZbVYwZDJWbGJpQjBkMjhnZG1WamRHOXljeTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbjBnY0NCVWFHVWdabWx5YzNRZ2RtVmpkRzl5TGx4dUlDb2dRSEJoY21GdElIdFdaV04wYjNKOUlIRWdWR2hsSUhObFkyOXVaQ0IyWldOMGIzSXVYRzRnS2lCQWNtVjBkWEp1SUh0dWRXMWlaWEo5SUVWMVkyeHBaR1ZoYmlCa2FYTjBZVzVqWlNCaVpYUjNaV1Z1SUhSb1pTQm5hWFpsYmlCMlpXTjBiM0p6TGx4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdZMkZzWTNWc1lYUmxSWFZqYkdsa1pXRnVSR2x6ZEdGdVkyVW9jRG9nVm1WamRHOXlMQ0J4T2lCV1pXTjBiM0lwT2lCdWRXMWlaWElnZTF4dUlDQnNaWFFnY21WemRXeDBJRDBnTUR0Y2JpQWdZMjl1YzNRZ2JHVnVJRDBnY0M1c1pXNW5kR2c3WEc1Y2JpQWdhV1lnS0d4bGJpQWhQVDBnY1M1c1pXNW5kR2dwWEc0Z0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtDZFVhR1VnWkdsdFpXNXphVzl1WVd4cGRIa2diMllnZEdobElIWmxZM1J2Y25NZ2JYVnpkQ0J0WVhSamFDY3BPMXh1SUNCY2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JzWlc0N0lDc3JhU2xjYmlBZ0lDQnlaWE4xYkhRZ0t6MGdLSEJiYVYwZ0xTQnhXMmxkS1NBcUtpQXlPMXh1SUNCY2JpQWdjbVYwZFhKdUlFMWhkR2d1YzNGeWRDaHlaWE4xYkhRcE8xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nWVNCa2FYTjBZVzVqWlNCdFlYUnlhWGdnZFhOcGJtY2dZU0JqZFhOMGIyMGdaR2x6ZEdGdVkyVWdablZ1WTNScGIyNHVYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSnpmU0JrWVhSaElFbHVjSFYwSUhabFkzUnZjbk1nZEc4Z1kyRnNZM1ZzWVhSbElHUnBjM1JoYm1ObGN5NWNiaUFxSUVCd1lYSmhiU0I3UkdsemRHRnVZMlZOWlhSeWFXTjlJR1JwYzNSaGJtTmxJRU4xYzNSdmJTQmthWE4wWVc1alpTQm1kVzVqZEdsdmJpNWNiaUFxSUVCeVpYUjFjbTRnZTAxaGRISnBlSDBnUTJGc1kzVnNZWFJsWkNCamRYTjBiMjBnWkdsemRHRnVZMlVnYldGMGNtbDRMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1kyRnNZMFJwYzNSaGJtTmxUV0YwY21sNEtHUmhkR0U2SUZabFkzUnZjbk1zSUdScGMzUmhibU5sT2lCRWFYTjBZVzVqWlUxbGRISnBZeWs2SUUxaGRISnBlQ0I3WEc0Z0lHTnZibk4wSUc1SmRHVnRjeUE5SUdSaGRHRXViR1Z1WjNSb08xeHVJQ0JqYjI1emRDQnRZWFJ5YVhnZ1BTQnBibWwwUTI5dmNtUnBibUYwWlhNb2JrbDBaVzF6TENCdVNYUmxiWE1zSURBcE8xeHVYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JrbDBaVzF6T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnYVNBcklERTdJR29nUENCdVNYUmxiWE03SUNzcmFpa2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ1pEb2diblZ0WW1WeUlEMGdLR1JoZEdGYmFWMGdQVDBnYm5Wc2JDa2dmSHdnS0dSaGRHRmJhbDBnUFQwZ2JuVnNiQ2tnUHlBd0lEb2daR2x6ZEdGdVkyVW9aR0YwWVZ0cFhTd2daR0YwWVZ0cVhTazdYRzRnSUNBZ0lDQnRZWFJ5YVhoYmFWMWJhbDBnUFNCdFlYUnlhWGhiYWwxYmFWMGdQU0JrTzF4dUlDQWdJSDFjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdiV0YwY21sNE8xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nWVNCa2FYTjBZVzVqWlNCdFlYUnlhWGdnZFhOcGJtY2dZU0JqZFhOMGIyMGdaR2x6ZEdGdVkyVWdablZ1WTNScGIyNHVYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSnpmU0JrWVhSaElFbHVjSFYwSUhabFkzUnZjbk1nZEc4Z1kyRnNZM1ZzWVhSbElHUnBjM1JoYm1ObGN5NWNiaUFxSUVCd1lYSmhiU0I3UkdsemRHRnVZMlZOWlhSeWFXTjlJR1JwYzNSaGJtTmxJRU4xYzNSdmJTQmthWE4wWVc1alpTQm1kVzVqZEdsdmJpNWNiaUFxSUVCeVpYUjFjbTRnZTAxaGRISnBlSDBnUTJGc1kzVnNZWFJsWkNCamRYTjBiMjBnWkdsemRHRnVZMlVnYldGMGNtbDRMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1kyRnNZMDV2Y20xaGJHbDZaV1JFYVhOMFlXNWpaVTFoZEhKcGVDaGtZWFJoT2lCV1pXTjBiM0p6TENCa2FYTjBZVzVqWlRvZ1JHbHpkR0Z1WTJWTlpYUnlhV01wT2lCTllYUnlhWGdnZTF4dUlDQmpiMjV6ZENCdVNYUmxiWE1nUFNCa1lYUmhMbXhsYm1kMGFEdGNiaUFnWTI5dWMzUWdiV0YwY21sNElEMGdhVzVwZEVOdmIzSmthVzVoZEdWektHNUpkR1Z0Y3l3Z2JrbDBaVzF6TENBd0tUdGNiaUFnYkdWMElHMWhlQ0E5SUU1MWJXSmxjaTVOU1U1ZlZrRk1WVVU3WEc0Z0lHeGxkQ0J0YVc0Z1BTQk9kVzFpWlhJdVRVRllYMVpCVEZWRk8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUc1SmRHVnRjenNnS3l0cEtTQjdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2s3SUdvZ1BDQnVTWFJsYlhNN0lDc3JhaWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdaRG9nYm5WdFltVnlJRDBnS0dSaGRHRmJhVjBnUFQwZ2JuVnNiQ2tnZkh3Z0tHUmhkR0ZiYWwwZ1BUMGdiblZzYkNCOGZDQnBJRDA5UFNCcUtTQS9JREFnT2lCa2FYTjBZVzVqWlNoa1lYUmhXMmxkTENCa1lYUmhXMnBkS1R0Y2JpQWdJQ0FnSUcxaGRISnBlRnRwWFZ0cVhTQTlJRzFoZEhKcGVGdHFYVnRwWFNBOUlHUTdYRzRnSUNBZ0lDQnBaaUFvWkNBK0lHMWhlQ2tnYldGNElEMGdaRHRjYmlBZ0lDQWdJR2xtSUNoa0lEd2diV2x1S1NCdGFXNGdQU0JrTzF4dUlDQWdJSDFjYmlBZ2ZWeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUc1SmRHVnRjenNnS3l0cEtTQjdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2tnS3lBeE95QnFJRHdnYmtsMFpXMXpPeUFySzJvcFhHNGdJQ0FnSUNCdFlYUnlhWGhiYVYxYmFsMGdQU0J0WVhSeWFYaGJhbDFiYVYwZ1BTQW9iV0YwY21sNFcybGRXMnBkSUMwZ2JXbHVLU0F2SUNodFlYZ2dMU0J0YVc0cE8xeHVJQ0I5WEc0Z0lISmxkSFZ5YmlCdFlYUnlhWGc3WEc1OVhHNWNiaThxS2lCSFpXNWxjbUYwWlhNZ1lYSnlZWGtnWm5KdmJTQmhJSEpoYm1kbElGdGlaV2RwYmpzZ1pXNWtYU0J2Y2lCYlltVm5hVzQ3SUdWdVpDa2dhV1lnWlc1a1JYaGpiSFZ6YVhabExpQXFLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJuWlc1U1lXNW5aU2hpWldkcGJqb2diblZ0WW1WeUxDQmxibVE2SUc1MWJXSmxjaXdnWlc1a1JYaGpiSFZ6YVhabElEMGdabUZzYzJVcE9pQkpiblF6TWtGeWNtRjVJSHRjYmlBZ1kyOXVjM1FnYmtsMFpXMXpJRDBnWlc1a0lDMGdZbVZuYVc0Z0t5QW9aVzVrUlhoamJIVnphWFpsSUQ4Z01DQTZJREVwTzF4dUlDQmpiMjV6ZENCelpYSnBaWE1nUFNCdVpYY2dTVzUwTXpKQmNuSmhlU2h1U1hSbGJYTXBPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dia2wwWlcxek95QXJLMmtwWEc0Z0lDQWdjMlZ5YVdWelcybGRJRDBnWW1WbmFXNGdLeUJwTzF4dVhHNGdJSEpsZEhWeWJpQnpaWEpwWlhNN1hHNTlYRzVjYmk4cUtseHVJQ29nVW1WMGRYSnVjeUJ2Y21SbGNpQnZaaUIyWVd4MVpYTWdZWE1nYVdZZ2RHaGxlU0JoY21VZ2MyOXlkR1ZrTGx4dUlDcGNiaUFxSUVCbGVIQnZjblJjYmlBcUlFQndZWEpoYlNCN1lXNTVXMTE5SUhaaGJIVmxjeUJKYm5CMWRDQmhjbkpoZVM1Y2JpQXFJRUJ3WVhKaGJTQjdZbTl2YkdWaGJuMGdXM0psZG1WeWMyVTlabUZzYzJWZElGZG9aWFJvWlhJZ2RHOGdjbVYwZFhKdUlISmxkbVZ5YzJWa0lHOXlaR1Z5TGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeVcxMTlJRlJvWlNCdmNtUmxjaUJqYjIxd2RYUmxaQzVjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHRnlaMU52Y25Rb2RtRnNkV1Z6T2lCaGJubGJYU3dnY21WMlpYSnpaU0E5SUdaaGJITmxLVG9nYm5WdFltVnlXMTBnZTF4dUlDQmpiMjV6ZENCemIzSjBabTRnUFNCeVpYWmxjbk5sSUQ4Z0tHRTZJR0Z1ZVZ0ZExDQmlPaUJoYm5sYlhTa2dQVDRnS0dKYk1GMGdMU0JoV3pCZEtTQTZJQ2hoT2lCaGJubGJYU3dnWWpvZ1lXNTVXMTBwSUQwK0lDaGhXekJkSUMwZ1lsc3dYU2s3WEc0Z0lHTnZibk4wSUdSbFkyOXlJRDBnS0hZNklHRnVlU3dnYVRvZ2JuVnRZbVZ5S1NBOVBpQmJkaXdnYVYwN0lDOHZJSE5sZENCcGJtUmxlQ0IwYnlCMllXeDFaVnh1SUNCamIyNXpkQ0IxYm1SbFkyOXlJRDBnS0dFNklHRnVlVnRkS1NBOVBpQmhXekZkT3lBdkx5QnNaV0YyWlNCdmJteDVJR2x1WkdWNFhHNGdJR052Ym5OMElGOWhjbWR6YjNKMElEMGdLR0Z5Y2pvZ1lXNTVXMTBwSUQwK0lHRnljaTV0WVhBb1pHVmpiM0lwTG5OdmNuUW9jMjl5ZEdadUtTNXRZWEFvZFc1a1pXTnZjaWs3WEc0Z0lISmxkSFZ5YmlCZllYSm5jMjl5ZENoMllXeDFaWE1wTzF4dWZWeHVYRzR2S2lwY2JpQXFJRkpsZEhWeWJuTWdkR2hsSUdsdVpHVjRaWE1nYjJZZ2RHaGxJRzF2YzNRZ1pHbDJaWEp6WlNCdlltcGxZM1J6SUdGalkyOXlaR2x1WnlCMGJ5QjBhR1VnWkdsemRDQm1kVzVqZEdsdmJseHVJQ29nUUhCaGNtRnRJSHR1ZFcxaVpYSjlJR3hsYm1kMGFDQjBiM1JoYkNCdWRXMWlaWElnYjJZZ2IySnFaV04wYzF4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlHNGdiblZ0WW1WeUlHOW1JR1JwZG1WeWMyVWdaV3hsYldWdWRITWdkRzhnWm1sdVpGeHVJQ29nUUhCaGNtRnRJSHNvYVRFNklHNTFiV0psY2l3Z2FUSTZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlmU0JrYVhOMElHRWdablZ1WTNScGIyNGdkMmhwWTJnZ1kyRnNZM1ZzWVhSbGN5QmthWE4wWVc1alpTQmlaWFIzWldWdVhHNGdLaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RIZHZJRzlpYW1WamRITWdkWE5wYm1jZ2RHaGxhWElnYVc1a1pYaGxjMXh1SUNvZ1FISmxkSFZ5Ym5NZ2UyNTFiV0psY2x0ZGZTQlVhR1VnYVc1a1pYaGxjeUJ2WmlCMGFHVWdiVzl6ZENCa2FYWmxjbk5sSUc5aWFtVmpkSE5jYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHZGxkRVJwZG1WeWMyVlRkV0p6WlhRb2JHVnVaM1JvT2lCdWRXMWlaWElzSUc0NklHNTFiV0psY2l3Z1pHbHpkRG9nS0dreE9pQnVkVzFpWlhJc0lHa3lPaUJ1ZFcxaVpYSXBJRDArSUc1MWJXSmxjaWs2SUc1MWJXSmxjbHRkSUh0Y2JpQWdablZ1WTNScGIyNGdiV0Y0UW5rb2RtRnNkV1Z6T2lCSmRHVnlZV0pzWlVsMFpYSmhkRzl5UEc1MWJXSmxjajRzSUc5eVpHVnlRbms2SUNocE9pQnVkVzFpWlhJcElEMCtJRzUxYldKbGNpa2dlMXh1SUNBZ0lHeGxkQ0J0WVhoV1lXeDFaU0E5SUc1MWJHdzdYRzRnSUNBZ2JHVjBJRzFoZUU5eVpHVnlRbmtnUFNCdWRXeHNPMXh1WEc0Z0lDQWdabTl5SUNoamIyNXpkQ0JsYkdWdFpXNTBJRzltSUhaaGJIVmxjeWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdaV3hsYldWdWRFOXlaR1Z5UW5rZ1BTQnZjbVJsY2tKNUtHVnNaVzFsYm5RcE8xeHVJQ0FnSUNBZ2FXWWdLRzFoZUU5eVpHVnlRbmtnUFQwZ2JuVnNiQ0I4ZkNCbGJHVnRaVzUwVDNKa1pYSkNlU0ErSUcxaGVFOXlaR1Z5UW5rcElIdGNiaUFnSUNBZ0lDQWdiV0Y0Vm1Gc2RXVWdQU0JsYkdWdFpXNTBPMXh1SUNBZ0lDQWdJQ0J0WVhoUGNtUmxja0o1SUQwZ1pXeGxiV1Z1ZEU5eVpHVnlRbms3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1SUNBZ0lISmxkSFZ5YmlCdFlYaFdZV3gxWlR0Y2JpQWdmVnh1WEc0Z0lHTnZibk4wSUhOMVluTmxkQ0E5SUZ0eVlXNWtiMjFKYm5Rb2JHVnVaM1JvSUMwZ01TbGRPMXh1SUNCamIyNXpkQ0JqYjIxd2JHVnRaVzUwSUQwZ2JtVjNJRk5sZENncE8xeHVYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JHVnVaM1JvT3lBcksya3BJSHRjYmlBZ0lDQnBaaUFvSVhOMVluTmxkQzVwYm1Oc2RXUmxjeWhwS1NsY2JpQWdJQ0FnSUdOdmJYQnNaVzFsYm5RdVlXUmtLR2twTzF4dUlDQjlYRzVjYmlBZ2QyaHBiR1VnS0hOMVluTmxkQzVzWlc1bmRHZ2dQQ0J1S1NCN1hHNGdJQ0FnWTI5dWMzUWdhV1I0SUQwZ2JXRjRRbmtvWEc0Z0lDQWdJQ0JqYjIxd2JHVnRaVzUwTG5aaGJIVmxjeWdwSUdGeklFbDBaWEpoWW14bFNYUmxjbUYwYjNJOGJuVnRZbVZ5UGl4Y2JpQWdJQ0FnSUNocEtTQTlQaUJOWVhSb0xtMXBiaTVoY0hCc2VTaE5ZWFJvTENCemRXSnpaWFF1YldGd0tHWjFibU4wYVc5dUtIWmhiQ3dnYVc1a1pYZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJR1JwYzNRb2FTd2dkbUZzS1R0Y2JpQWdJQ0FnSUgwcEtTazdYRzRnSUNBZ2FXWWdLR2xrZUNrZ2UxeHVJQ0FnSUNBZ2MzVmljMlYwTG5CMWMyZ29hV1I0S1R0Y2JpQWdJQ0FnSUdOdmJYQnNaVzFsYm5RdVpHVnNaWFJsS0dsa2VDazdYRzRnSUNBZ2ZWeHVJQ0I5WEc0Z0lISmxkSFZ5YmlCemRXSnpaWFE3WEc1OVhHNWNiaThxS2x4dUlDb2dVbVYwZFhKdWN5QnViM0p0WVd4cGVtVmtJSFpsWTNSdmNpNWNiaUFxSUZ4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSjlJR1JoZEdFZ2JuVnRaWEpwWTJGc0lHRnljbUY1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnViM0p0WVd4cGVtVW9aR0YwWVRvZ1ZtVmpkRzl5S1RvZ1ZtVmpkRzl5SUh0Y2JpQWdZMjl1YzNRZ2JHVnVJRDBnWkdGMFlTNXNaVzVuZEdnN1hHNGdJR3hsZENCemRXMGdQU0F3TzF4dUlDQnNaWFFnYzNWdFQyWlRjWFZoY21WeklEMGdNRHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR3hsYmpzZ0t5dHBLU0I3WEc0Z0lDQWdjM1Z0SUNzOUlHUmhkR0ZiYVYwN1hHNGdJQ0FnYzNWdFQyWlRjWFZoY21WeklDczlJR1JoZEdGYmFWMGdLaW9nTWp0Y2JpQWdmVnh1WEc0Z0lHTnZibk4wSUcxbFlXNGdQU0J6ZFcwZ0x5QnNaVzQ3WEc0Z0lHTnZibk4wSUhOMFpFUmxka2x1ZG1WeWMyVWdQU0F4TGpBZ0x5Qk5ZWFJvTG5OeGNuUW9jM1Z0VDJaVGNYVmhjbVZ6SUM4Z2JHVnVJQzBnYldWaGJpQXFLaUF5S1R0Y2JseHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUd4bGJqc2dLeXRwS1Z4dUlDQWdJR1JoZEdGYmFWMGdQU0FvWkdGMFlWdHBYU0F0SUcxbFlXNHBJQ29nYzNSa1JHVjJTVzUyWlhKelpUdGNibHh1SUNCeVpYUjFjbTRnWkdGMFlUdGNibjFjYmx4dUx5b3FYRzRnS2lCR2FXNWtjeUJ6WlhRZ1pHbG1abVZ5Wlc1alpTQmlaWFIzWldWdUlIUjNieUJzYVhOMGN5NWNiaUFxSUVCd1lYSmhiU0I3WVc1NVcxMTlJR0VnVkdobElHWnBjbk4wSUd4cGMzUXVYRzRnS2lCQWNHRnlZVzBnZTJGdWVWdGRmU0JpSUZSb1pTQnpaV052Ym1RZ2JHbHpkQzVjYmlBcUlFQnlaWFIxY200Z2UyRnVlVnRkZlZ4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdjMlYwUkdsbVptVnlaVzVqWlNoaE9pQmhibmxiWFN3Z1lqb2dZVzU1VzEwcE9pQmhibmxiWFNCN1hHNGdJR052Ym5OMElHSlRaWFFnUFNCdVpYY2dVMlYwS0dJcE8xeHVJQ0J5WlhSMWNtNGdRWEp5WVhrdVpuSnZiU2h1WlhjZ1UyVjBLR0V1Wm1sc2RHVnlLQ2g0S1NBOVBpQWhZbE5sZEM1b1lYTW9lQ2twS1M1MllXeDFaWE1vS1NrN1hHNTlYRzRpWFgwPSIsImltcG9ydCAqIGFzIGZsIGZyb20gJ2Zhc3Rlc3QtbGV2ZW5zaHRlaW4nO1xuaW1wb3J0IHsgamFyb1dpbmtsZXIgfSBmcm9tICdqYXJvLXdpbmtsZXItdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBhc3ltbWV0cmljRGlzdGFuY2UsIGJyYXVuQmxhbnF1ZXREaXN0YW5jZSwgY29zaW5lRGlzdGFuY2UsIGRpY2VEaXN0YW5jZSwgZXVjbGlkZWFuRGlzdGFuY2UsIGhhbW1pbmdEaXN0YW5jZSwga3VsY3p5bnNraURpc3RhbmNlLCBtY0Nvbm5hdWdoZXlEaXN0YW5jZSwgcm9nb3RHb2xkYmVyZ0Rpc3RhbmNlLCBydXNzZWxEaXN0YW5jZSwgc29rYWxEaXN0YW5jZSwgdGFuaW1vdG9EaXN0YW5jZSwgbnVtZXJpY0Rpc3RhbmNlLCB0YW5pbW90b0Rpc3RhbmNlSW50QXJyYXksIH0gZnJvbSAnLi4vZGlzdGFuY2UtbWV0cmljcy1tZXRob2RzJztcbmltcG9ydCB7IGNhbGN1bGF0ZUV1Y2xpZGVhbkRpc3RhbmNlIH0gZnJvbSAnQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvdmVjdG9yLW9wZXJhdGlvbnMnO1xuaW1wb3J0IHsgbW1EaXN0YW5jZUZ1bmN0aW9ucywgTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzIH0gZnJvbSAnLi4vbWFjcm9tb2xlY3VsZS1kaXN0YW5jZS1mdW5jdGlvbnMnO1xuaW1wb3J0IHsgRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMsIEJpdEFycmF5TWV0cmljc05hbWVzLCBTdHJpbmdNZXRyaWNzTmFtZXMsIFZlY3Rvck1ldHJpY3NOYW1lcywgTnVtYmVyTWV0cmljc05hbWVzLCBJbnRBcnJheU1ldHJpY3NOYW1lcyB9IGZyb20gJy4vY29uc3RzJztcbmV4cG9ydCBjb25zdCB2ZWN0b3JEaXN0YW5jZU1ldHJpY3NNZXRob2RzID0ge1xuICAgIFtWZWN0b3JNZXRyaWNzTmFtZXMuRXVjbGlkZWFuXTogY2FsY3VsYXRlRXVjbGlkZWFuRGlzdGFuY2UsXG59O1xuZXhwb3J0IGNvbnN0IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHMgPSB7XG4gICAgW1N0cmluZ01ldHJpY3NOYW1lcy5MZXZlbnNodGVpbl06IGZsLmRpc3RhbmNlLFxuICAgIFtTdHJpbmdNZXRyaWNzTmFtZXMuSmFyb1dpbmtsZXJdOiBqYXJvV2lua2xlcixcbiAgICBbU3RyaW5nTWV0cmljc05hbWVzLk1hbmhhdHRhbl06IG1hbmhhdHRhbkRpc3RhbmNlLFxuICAgIFtTdHJpbmdNZXRyaWNzTmFtZXMuT25laG90XTogY2F0ZWdvcmljYWxEaXN0YW5jZSxcbn07XG5leHBvcnQgY29uc3QgYml0QXJyYXlEaXN0YW5jZU1ldHJpY3NNZXRob2RzID0ge1xuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b106IHRhbmltb3RvRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkRpY2VdOiBkaWNlRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkFzeW1tZXRyaWNdOiBhc3ltbWV0cmljRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkJyYXVuQmxhbnF1ZXRdOiBicmF1bkJsYW5xdWV0RGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkNvc2luZV06IGNvc2luZURpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5LdWxjenluc2tpXToga3VsY3p5bnNraURpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5NY0Nvbm5hdWdoZXldOiBtY0Nvbm5hdWdoZXlEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuUm9nb3RHb2xkYmVyZ106IHJvZ290R29sZGJlcmdEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuUnVzc2VsXTogcnVzc2VsRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlNva2FsXTogc29rYWxEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuSGFtbWluZ106IGhhbW1pbmdEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuRXVjbGlkZWFuXTogZXVjbGlkZWFuRGlzdGFuY2UsXG59O1xuZXhwb3J0IGNvbnN0IGludEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kcyA9IHtcbiAgICBbSW50QXJyYXlNZXRyaWNzTmFtZXMuVGFuaW1vdG9JbnRBcnJheV06IHRhbmltb3RvRGlzdGFuY2VJbnRBcnJheSxcbn07XG5leHBvcnQgY29uc3QgbnVtYmVyRGlzdGFuY2VNZXRyaWNzTWV0aG9kcyA9IHtcbiAgICBbTnVtYmVyTWV0cmljc05hbWVzLkRpZmZlcmVuY2VdOiBudW1lcmljRGlzdGFuY2UsXG59O1xuZXhwb3J0IGNvbnN0IEF2YWlsYWJsZU1ldHJpY3MgPSB7XG4gICAgW0Rpc3RhbmNlTWV0cmljc1N1YmplY3RzLlZlY3Rvcl06IHtcbiAgICAgICAgW1ZlY3Rvck1ldHJpY3NOYW1lcy5FdWNsaWRlYW5dOiB2ZWN0b3JEaXN0YW5jZU1ldHJpY3NNZXRob2RzW1ZlY3Rvck1ldHJpY3NOYW1lcy5FdWNsaWRlYW5dLFxuICAgIH0sXG4gICAgW0Rpc3RhbmNlTWV0cmljc1N1YmplY3RzLlN0cmluZ106IHtcbiAgICAgICAgW1N0cmluZ01ldHJpY3NOYW1lcy5MZXZlbnNodGVpbl06IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHNbU3RyaW5nTWV0cmljc05hbWVzLkxldmVuc2h0ZWluXSxcbiAgICAgICAgW1N0cmluZ01ldHJpY3NOYW1lcy5KYXJvV2lua2xlcl06IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHNbU3RyaW5nTWV0cmljc05hbWVzLkphcm9XaW5rbGVyXSxcbiAgICAgICAgW1N0cmluZ01ldHJpY3NOYW1lcy5NYW5oYXR0YW5dOiBzdHJpbmdEaXN0YW5jZU1ldHJpY3NNZXRob2RzW1N0cmluZ01ldHJpY3NOYW1lcy5NYW5oYXR0YW5dLFxuICAgICAgICBbU3RyaW5nTWV0cmljc05hbWVzLk9uZWhvdF06IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHNbU3RyaW5nTWV0cmljc05hbWVzLk9uZWhvdF0sXG4gICAgfSxcbiAgICBbRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuQml0QXJyYXldOiB7XG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b106IGJpdEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kc1tCaXRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b10sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5EaWNlXTogYml0QXJyYXlEaXN0YW5jZU1ldHJpY3NNZXRob2RzW0JpdEFycmF5TWV0cmljc05hbWVzLkRpY2VdLFxuICAgICAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuQXN5bW1ldHJpY106IGJpdEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kc1tCaXRBcnJheU1ldHJpY3NOYW1lcy5Bc3ltbWV0cmljXSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkJyYXVuQmxhbnF1ZXRdOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuQnJhdW5CbGFucXVldF0sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5Db3NpbmVdOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuQ29zaW5lXSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkt1bGN6eW5za2ldOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuS3VsY3p5bnNraV0sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5NY0Nvbm5hdWdoZXldOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuTWNDb25uYXVnaGV5XSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlJvZ290R29sZGJlcmddOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuUm9nb3RHb2xkYmVyZ10sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5SdXNzZWxdOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuUnVzc2VsXSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlNva2FsXTogYml0QXJyYXlEaXN0YW5jZU1ldHJpY3NNZXRob2RzW0JpdEFycmF5TWV0cmljc05hbWVzLlNva2FsXSxcbiAgICB9LFxuICAgIFtEaXN0YW5jZU1ldHJpY3NTdWJqZWN0cy5NYWNyb01vbGVjdWxlXToge1xuICAgICAgICBbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLkhBTU1JTkddOiBtbURpc3RhbmNlRnVuY3Rpb25zW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5IQU1NSU5HXSxcbiAgICAgICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5MRVZFTlNIVEVJTl06IG1tRGlzdGFuY2VGdW5jdGlvbnNbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLkxFVkVOU0hURUlOXSxcbiAgICAgICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5ORUVETEVNQU5OX1dVTlNDSF06IG1tRGlzdGFuY2VGdW5jdGlvbnNbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLk5FRURMRU1BTk5fV1VOU0NIXSxcbiAgICAgICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5NT05PTUVSX0NIRU1JQ0FMX0RJU1RBTkNFXTogbW1EaXN0YW5jZUZ1bmN0aW9uc1tNbURpc3RhbmNlRnVuY3Rpb25zTmFtZXMuTU9OT01FUl9DSEVNSUNBTF9ESVNUQU5DRV0sXG4gICAgfSxcbiAgICBbRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTnVtYmVyXToge1xuICAgICAgICBbTnVtYmVyTWV0cmljc05hbWVzLkRpZmZlcmVuY2VdOiBudW1iZXJEaXN0YW5jZU1ldHJpY3NNZXRob2RzW051bWJlck1ldHJpY3NOYW1lcy5EaWZmZXJlbmNlXSxcbiAgICB9LFxuICAgIFtEaXN0YW5jZU1ldHJpY3NTdWJqZWN0cy5JbnRBcnJheV06IHtcbiAgICAgICAgW0ludEFycmF5TWV0cmljc05hbWVzLlRhbmltb3RvSW50QXJyYXldOiBpbnRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbSW50QXJyYXlNZXRyaWNzTmFtZXMuVGFuaW1vdG9JbnRBcnJheV0sXG4gICAgfVxufTtcbmV4cG9ydCBjb25zdCBNZXRyaWNUb0RhdGFUeXBlID0gT2JqZWN0LmtleXMoQXZhaWxhYmxlTWV0cmljcylcbiAgICAucmVkdWNlKChyZXQsIGtleSkgPT4ge1xuICAgIGZvciAoY29uc3QgdmFsIG9mIE9iamVjdC5rZXlzKEF2YWlsYWJsZU1ldHJpY3Nba2V5XSkpXG4gICAgICAgIHJldFt2YWxdID0ga2V5O1xuICAgIHJldHVybiByZXQ7XG59LCB7fSk7XG5leHBvcnQgZnVuY3Rpb24gaXNTdHJpbmdNZXRyaWMobmFtZSkge1xuICAgIHJldHVybiBNZXRyaWNUb0RhdGFUeXBlW25hbWVdID09ICdTdHJpbmcnO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzQml0QXJyYXlNZXRyaWMobmFtZSkge1xuICAgIHJldHVybiBNZXRyaWNUb0RhdGFUeXBlW25hbWVdID09ICdCaXRBcnJheSc7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNWZWN0b3JNZXRyaWMobmFtZSkge1xuICAgIHJldHVybiBNZXRyaWNUb0RhdGFUeXBlW25hbWVdID09ICdWZWN0b3InO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzTWFjcm9Nb2xlY3VsZU1ldHJpYyhuYW1lKSB7XG4gICAgcmV0dXJuIE1ldHJpY1RvRGF0YVR5cGVbbmFtZV0gPT0gRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTWFjcm9Nb2xlY3VsZS50b1N0cmluZygpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzTnVtZXJpY01ldHJpYyhuYW1lKSB7XG4gICAgcmV0dXJuIE1ldHJpY1RvRGF0YVR5cGVbbmFtZV0gPT0gRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTnVtYmVyLnRvU3RyaW5nKCk7XG59XG4vKiogTWFuaGF0dGFuIGRpc3RhbmNlIGJldHdlZW4gdHdvIHNlcXVlbmNlcyAobWF0Y2ggLSAwLCBtaXNtYXRjaCAtIDEpIG5vcm1hbGl6ZWQgZm9yIGxlbmd0aC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYW5oYXR0YW5EaXN0YW5jZShzMSwgczIpIHtcbiAgICBpZiAoczEubGVuZ3RoICE9PSBzMi5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBsZXQgZGlzdCA9IDA7XG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgczEubGVuZ3RoOyBpKyspXG4gICAgICAgICAgICBkaXN0ICs9IHMxW2ldID09IHMyW2ldID8gMCA6IDE7XG4gICAgICAgIHJldHVybiBkaXN0IC8gczEubGVuZ3RoO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBjYXRlZ29yaWNhbERpc3RhbmNlKHMxLCBzMikge1xuICAgIHJldHVybiBzMSA9PT0gczIgPyAwIDogMTtcbn1cbi8qKiBVbmlmaWVkIGNsYXNzIGltcGxlbWVudGluZyBkaWZmZXJlbnQgc3RyaW5nIG1lYXN1cmVzLiAqL1xuZXhwb3J0IGNsYXNzIE1lYXN1cmUge1xuICAgIG1ldGhvZDtcbiAgICBkYXRhVHlwZTtcbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIE1lYXN1cmUgd2l0aCAuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZCBNZXRob2QgdG8gY2FsY3VsYXRlIGRpc3RhbmNlIGJldHdlZW4gc3RyaW5ncy5cbiAgICAgKiBAbWVtYmVyb2YgTWVhc3VyZXJcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihtZXRob2QpIHtcbiAgICAgICAgdGhpcy5tZXRob2QgPSBtZXRob2Q7XG4gICAgICAgIHRoaXMuZGF0YVR5cGUgPSBNZXRyaWNUb0RhdGFUeXBlW21ldGhvZF07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgY3VzdG9tIHN0cmluZyBkaXN0YW5jZSBmdW5jdGlvbiBzcGVjaWZpZWQuXG4gICAgICogQHBhcmFtIHtvcHRzfSBvcHRzIE9wdGlvbnMgZm9yIHRoZSBtZWFzdXJlLiB1c2VkIGZvciBtYWNyb21vbGVjdWxlIGRpc3RhbmNlc1xuICAgICAqIEByZXR1cm4ge0Rpc3RhbmNlTWV0cmljfSBDYWxsYmFjayBvZiB0aGUgbWVhc3VyZSBjaG9zZW4uXG4gICAgICogQG1lbWJlcm9mIE1lYXN1cmVyXG4gICAgICovXG4gICAgZ2V0TWVhc3VyZShvcHRzKSB7XG4gICAgICAgIGNvbnN0IGRpY3QgPSBBdmFpbGFibGVNZXRyaWNzO1xuICAgICAgICBpZiAoIWRpY3QuaGFzT3duUHJvcGVydHkodGhpcy5kYXRhVHlwZSkgfHwgIWRpY3RbdGhpcy5kYXRhVHlwZV0uaGFzT3duUHJvcGVydHkodGhpcy5tZXRob2QpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG1lYXN1cmUgJHt0aGlzLm1ldGhvZH0gZm9yIGRhdGEgdHlwZSAke3RoaXMuZGF0YVR5cGV9YCk7XG4gICAgICAgIHJldHVybiBpc01hY3JvTW9sZWN1bGVNZXRyaWModGhpcy5tZXRob2QpIHx8IGlzTnVtZXJpY01ldHJpYyh0aGlzLm1ldGhvZCkgP1xuICAgICAgICAgICAgZGljdFt0aGlzLmRhdGFUeXBlXVt0aGlzLm1ldGhvZF0ob3B0cykgOlxuICAgICAgICAgICAgZGljdFt0aGlzLmRhdGFUeXBlXVt0aGlzLm1ldGhvZF07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgY3VzdG9tIHN0cmluZyBkaXN0YW5jZSBieSB0aGUgZ2l2ZW4gZGF0YSB0eXBlLlxuICAgICAqIEBwYXJhbSB7QXZhaWxhYmxlRGF0YVR5cGVzfSBkYXRhVHlwZSBNZXRyaWMncyBkYXRhIHR5cGVcbiAgICAgKiBAcmV0dXJuIHtzdHJpbmdbXX0gTWV0cmljIG5hbWVzIHdoaWNoIGV4cGVjdHMgdGhlIGdpdmVuIGRhdGEgdHlwZVxuICAgICAqIEBtZW1iZXJvZiBNZWFzdXJlclxuICAgICAqL1xuICAgIHN0YXRpYyBnZXRNZXRyaWNCeURhdGFUeXBlKGRhdGFUeXBlKSB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhBdmFpbGFibGVNZXRyaWNzW2RhdGFUeXBlXSk7XG4gICAgfVxuICAgIC8qKiBSZXR1cm5zIG1ldHJpYyBuYW1lcyBhdmFpbGFibGUuXG4gICAgICogQG1lbWJlcm9mIE1lYXN1cmVyXG4gICAgICovXG4gICAgc3RhdGljIGdldCBhdmFpbGFibGVNZWFzdXJlcygpIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKEF2YWlsYWJsZU1ldHJpY3MpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRIbHdaV1F0YldWMGNtbGpjeTVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYkluUjVjR1ZrTFcxbGRISnBZM011ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRXNUMEZCVHl4TFFVRkxMRVZCUVVVc1RVRkJUU3h4UWtGQmNVSXNRMEZCUXp0QlFVTXhReXhQUVVGUExFVkJRVU1zVjBGQlZ5eEZRVUZETEUxQlFVMHNlVUpCUVhsQ0xFTkJRVU03UVVGRmNFUXNUMEZCVHl4RlFVTk1MR3RDUVVGclFpeEZRVU5zUWl4eFFrRkJjVUlzUlVGRGNrSXNZMEZCWXl4RlFVTmtMRmxCUVZrc1JVRkRXaXhwUWtGQmFVSXNSVUZEYWtJc1pVRkJaU3hGUVVObUxHdENRVUZyUWl4RlFVTnNRaXh2UWtGQmIwSXNSVUZEY0VJc2NVSkJRWEZDTEVWQlEzSkNMR05CUVdNc1JVRkRaQ3hoUVVGaExFVkJRMklzWjBKQlFXZENMRVZCUTJoQ0xHVkJRV1VzUlVGRFppeDNRa0ZCZDBJc1IwRkRla0lzVFVGQlRTdzJRa0ZCTmtJc1EwRkJRenRCUVVWeVF5eFBRVUZQTEVWQlFVTXNNRUpCUVRCQ0xFVkJRVU1zVFVGQlRTeHBSRUZCYVVRc1EwRkJRenRCUVVjelJpeFBRVUZQTEVWQlFVTXNiVUpCUVcxQ0xFVkJRVVVzZDBKQlFYZENMRVZCUVVNc1RVRkJUU3h4UTBGQmNVTXNRMEZCUXp0QlFVTnNSeXhQUVVGUExFVkJRVU1zZFVKQlFYVkNMRVZCUVVVc2IwSkJRVzlDTEVWQlEyNUVMR3RDUVVGclFpeEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxHdENRVUZyUWl4RlFVRkZMRzlDUVVGdlFpeEZRVUZETEUxQlFVMHNWVUZCVlN4RFFVRkRPMEZCUjNCSExFMUJRVTBzUTBGQlF5eE5RVUZOTERSQ1FVRTBRaXhIUVVGNVJEdEpRVU5vUnl4RFFVRkRMR3RDUVVGclFpeERRVUZETEZOQlFWTXNRMEZCUXl4RlFVRkZMREJDUVVFd1FqdERRVU16UkN4RFFVRkRPMEZCUlVZc1RVRkJUU3hEUVVGRExFMUJRVTBzTkVKQlFUUkNMRWRCUVhsRU8wbEJRMmhITEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVjBGQlZ5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRkZCUVZFN1NVRkROME1zUTBGQlF5eHJRa0ZCYTBJc1EwRkJReXhYUVVGWExFTkJRVU1zUlVGQlJTeFhRVUZYTzBsQlF6ZERMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNVMEZCVXl4RFFVRkRMRVZCUVVVc2FVSkJRV2xDTzBsQlEycEVMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNUVUZCVFN4RFFVRkRMRVZCUVVVc2JVSkJRVzFDTzBOQlEycEVMRU5CUVVNN1FVRkZSaXhOUVVGTkxFTkJRVU1zVFVGQlRTdzRRa0ZCT0VJc1IwRkJOa1E3U1VGRGRFY3NRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFJRVUZSTEVOQlFVTXNSVUZCUlN4blFrRkJaMEk3U1VGRGFrUXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4WlFVRlpPMGxCUTNwRExFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1ZVRkJWU3hEUVVGRExFVkJRVVVzYTBKQlFXdENPMGxCUTNKRUxFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1lVRkJZU3hEUVVGRExFVkJRVVVzY1VKQlFYRkNPMGxCUXpORUxFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1RVRkJUU3hEUVVGRExFVkJRVVVzWTBGQll6dEpRVU0zUXl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEZWQlFWVXNRMEZCUXl4RlFVRkZMR3RDUVVGclFqdEpRVU55UkN4RFFVRkRMRzlDUVVGdlFpeERRVUZETEZsQlFWa3NRMEZCUXl4RlFVRkZMRzlDUVVGdlFqdEpRVU42UkN4RFFVRkRMRzlDUVVGdlFpeERRVUZETEdGQlFXRXNRMEZCUXl4RlFVRkZMSEZDUVVGeFFqdEpRVU16UkN4RFFVRkRMRzlDUVVGdlFpeERRVUZETEUxQlFVMHNRMEZCUXl4RlFVRkZMR05CUVdNN1NVRkROME1zUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhMUVVGTExFTkJRVU1zUlVGQlJTeGhRVUZoTzBsQlF6TkRMRU5CUVVNc2IwSkJRVzlDTEVOQlFVTXNUMEZCVHl4RFFVRkRMRVZCUVVVc1pVRkJaVHRKUVVNdlF5eERRVUZETEc5Q1FVRnZRaXhEUVVGRExGTkJRVk1zUTBGQlF5eEZRVUZGTEdsQ1FVRnBRanREUVVOd1JDeERRVUZETzBGQlJVWXNUVUZCVFN4RFFVRkRMRTFCUVUwc09FSkJRVGhDTEVkQlFXMUZPMGxCUXpWSExFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNSVUZCUlN4M1FrRkJkMEk3UTBGRGJFVXNRMEZCUXp0QlFVVkdMRTFCUVUwc1EwRkJReXhOUVVGTkxEUkNRVUUwUWl4SFFVRjNSVHRKUVVNdlJ5eERRVUZETEd0Q1FVRnJRaXhEUVVGRExGVkJRVlVzUTBGQlF5eEZRVUZGTEdWQlFXVTdRMEZEYWtRc1EwRkJRenRCUVVWR0xFMUJRVTBzUTBGQlF5eE5RVUZOTEdkQ1FVRm5RaXhIUVVGSE8wbEJRemxDTEVOQlFVTXNkVUpCUVhWQ0xFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVTdVVUZEYUVNc1EwRkJReXhyUWtGQmEwSXNRMEZCUXl4VFFVRlRMRU5CUVVNc1JVRkJSU3cwUWtGQk5FSXNRMEZCUXl4clFrRkJhMElzUTBGQlF5eFRRVUZUTEVOQlFVTTdTMEZETTBZN1NVRkRSQ3hEUVVGRExIVkNRVUYxUWl4RFFVRkRMRTFCUVUwc1EwRkJReXhGUVVGRk8xRkJRMmhETEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVjBGQlZ5eERRVUZETEVWQlFVVXNORUpCUVRSQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1YwRkJWeXhEUVVGRE8xRkJRemxHTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVjBGQlZ5eERRVUZETEVWQlFVVXNORUpCUVRSQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1YwRkJWeXhEUVVGRE8xRkJRemxHTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVTBGQlV5eERRVUZETEVWQlFVVXNORUpCUVRSQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1UwRkJVeXhEUVVGRE8xRkJRekZHTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVXNORUpCUVRSQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1RVRkJUU3hEUVVGRE8wdEJRM0pHTzBsQlEwUXNRMEZCUXl4MVFrRkJkVUlzUTBGQlF5eFJRVUZSTEVOQlFVTXNSVUZCUlR0UlFVTnNReXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRkZCUVZFc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEZGQlFWRXNRMEZCUXp0UlFVTTVSaXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRWxCUVVrc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEVsQlFVa3NRMEZCUXp0UlFVTjBSaXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRlZCUVZVc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEZWQlFWVXNRMEZCUXp0UlFVTnNSeXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMR0ZCUVdFc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEdGQlFXRXNRMEZCUXp0UlFVTjRSeXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRTFCUVUwc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEUxQlFVMHNRMEZCUXp0UlFVTXhSaXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRlZCUVZVc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEZWQlFWVXNRMEZCUXp0UlFVTnNSeXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRmxCUVZrc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEZsQlFWa3NRMEZCUXp0UlFVTjBSeXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMR0ZCUVdFc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEdGQlFXRXNRMEZCUXp0UlFVTjRSeXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRTFCUVUwc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEUxQlFVMHNRMEZCUXp0UlFVTXhSaXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRXRCUVVzc1EwRkJReXhGUVVGRkxEaENRVUU0UWl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEV0QlFVc3NRMEZCUXp0TFFVTjZSanRKUVVORUxFTkJRVU1zZFVKQlFYVkNMRU5CUVVNc1lVRkJZU3hEUVVGRExFVkJRVVU3VVVGRGRrTXNRMEZCUXl4M1FrRkJkMElzUTBGQlF5eFBRVUZQTEVOQlFVTXNSVUZCUlN4dFFrRkJiVUlzUTBGQlF5eDNRa0ZCZDBJc1EwRkJReXhQUVVGUExFTkJRVU03VVVGRGVrWXNRMEZCUXl4M1FrRkJkMElzUTBGQlF5eFhRVUZYTEVOQlFVTXNSVUZCUlN4dFFrRkJiVUlzUTBGQlF5eDNRa0ZCZDBJc1EwRkJReXhYUVVGWExFTkJRVU03VVVGRGFrY3NRMEZCUXl4M1FrRkJkMElzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhGUVVGRkxHMUNRVUZ0UWl4RFFVRkRMSGRDUVVGM1FpeERRVUZETEdsQ1FVRnBRaXhEUVVGRE8xRkJRemRITEVOQlFVTXNkMEpCUVhkQ0xFTkJRVU1zZVVKQlFYbENMRU5CUVVNc1JVRkRiRVFzYlVKQlFXMUNMRU5CUVVNc2QwSkJRWGRDTEVOQlFVTXNlVUpCUVhsQ0xFTkJRVU03UzBGRE1VVTdTVUZEUkN4RFFVRkRMSFZDUVVGMVFpeERRVUZETEUxQlFVMHNRMEZCUXl4RlFVRkZPMUZCUTJoRExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1ZVRkJWU3hEUVVGRExFVkJRVVVzTkVKQlFUUkNMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNWVUZCVlN4RFFVRkRPMHRCUXpkR08wbEJRMFFzUTBGQlF5eDFRa0ZCZFVJc1EwRkJReXhSUVVGUkxFTkJRVU1zUlVGQlJUdFJRVU5zUXl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEdkQ1FVRm5RaXhEUVVGRExFVkJRVVVzT0VKQlFUaENMRU5CUVVNc2IwSkJRVzlDTEVOQlFVTXNaMEpCUVdkQ0xFTkJRVU03UzBGREwwYzdRMEZEUml4RFFVRkRPMEZCUlVZc1RVRkJUU3hEUVVGRExFMUJRVTBzWjBKQlFXZENMRWRCUVhGQ0xFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNaMEpCUVdkQ0xFTkJRVU03UzBGRE5VVXNUVUZCVFN4RFFVRkRMRU5CUVVNc1IwRkJjVUlzUlVGQlJTeEhRVUZITEVWQlFVVXNSVUZCUlR0SlFVTnlReXhMUVVGTExFMUJRVTBzUjBGQlJ5eEpRVUZKTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNSMEZCZVVJc1EwRkJReXhEUVVGRE8xRkJRM2hGTEVkQlFVY3NRMEZCUXl4SFFVRjVRaXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlJYWkRMRTlCUVU4c1IwRkJSeXhEUVVGRE8wRkJRMklzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRPMEZCWlZRc1RVRkJUU3hWUVVGVkxHTkJRV01zUTBGQlF5eEpRVUZyUWp0SlFVTXZReXhQUVVGUExHZENRVUZuUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxGRkJRVkVzUTBGQlF6dEJRVU0xUXl4RFFVRkRPMEZCUlVRc1RVRkJUU3hWUVVGVkxHZENRVUZuUWl4RFFVRkRMRWxCUVd0Q08wbEJRMnBFTEU5QlFVOHNaMEpCUVdkQ0xFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NWVUZCVlN4RFFVRkRPMEZCUXpsRExFTkJRVU03UVVGRlJDeE5RVUZOTEZWQlFWVXNZMEZCWXl4RFFVRkRMRWxCUVd0Q08wbEJReTlETEU5QlFVOHNaMEpCUVdkQ0xFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NVVUZCVVN4RFFVRkRPMEZCUXpWRExFTkJRVU03UVVGRlJDeE5RVUZOTEZWQlFWVXNjVUpCUVhGQ0xFTkJRVU1zU1VGQmEwSTdTVUZEZEVRc1QwRkJUeXhuUWtGQlowSXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3gxUWtGQmRVSXNRMEZCUXl4aFFVRmhMRU5CUVVNc1VVRkJVU3hGUVVGRkxFTkJRVU03UVVGRGNFWXNRMEZCUXp0QlFVVkVMRTFCUVUwc1ZVRkJWU3hsUVVGbExFTkJRVU1zU1VGQmEwSTdTVUZEYUVRc1QwRkJUeXhuUWtGQlowSXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3gxUWtGQmRVSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1VVRkJVU3hGUVVGRkxFTkJRVU03UVVGRE4wVXNRMEZCUXp0QlFVVkVMR2RIUVVGblJ6dEJRVU5vUnl4TlFVRk5MRlZCUVZVc2FVSkJRV2xDTEVOQlFVTXNSVUZCVlN4RlFVRkZMRVZCUVZVN1NVRkRkRVFzU1VGQlNTeEZRVUZGTEVOQlFVTXNUVUZCVFN4TFFVRkxMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVU3VVVGRE0wSXNUMEZCVHl4RFFVRkRMRU5CUVVNN1MwRkRWanRUUVVGTk8xRkJRMHdzU1VGQlNTeEpRVUZKTEVkQlFWY3NRMEZCUXl4RFFVRkRPMUZCUTNKQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlR0WlFVTm9ReXhKUVVGSkxFbEJRVWtzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGFrTXNUMEZCVHl4SlFVRkpMRWRCUVVjc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF6dExRVU42UWp0QlFVTklMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzYlVKQlFXMUNMRU5CUVVNc1JVRkJWU3hGUVVGRkxFVkJRVlU3U1VGRGVFUXNUMEZCVHl4RlFVRkZMRXRCUVVzc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVNelFpeERRVUZETzBGQlJVUXNORVJCUVRSRU8wRkJRelZFTEUxQlFVMHNUMEZCVHl4UFFVRlBPMGxCUTFJc1RVRkJUU3hEUVVGbE8wbEJRM0pDTEZGQlFWRXNRMEZCY1VJN1NVRkZka003T3pzN1QwRkpSenRKUVVOSUxGbEJRVmtzVFVGQmIwSTdVVUZET1VJc1NVRkJTU3hEUVVGRExFMUJRVTBzUjBGQlJ5eE5RVUZOTEVOQlFVTTdVVUZEY2tJc1NVRkJTU3hEUVVGRExGRkJRVkVzUjBGQlJ5eG5Ra0ZCWjBJc1EwRkJReXhOUVVGTkxFTkJRWFZDTEVOQlFVTTdTVUZEYWtVc1EwRkJRenRKUVVWRU96czdPenRQUVV0SE8wbEJRMGtzVlVGQlZTeERRVUZETEVsQlFWVTdVVUZETVVJc1RVRkJUU3hKUVVGSkxFZEJSVTRzWjBKQlFXZENMRU5CUVVNN1VVRkRja0lzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF5eGpRVUZqTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJRenRaUVVONlJpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRzFDUVVGdFFpeEpRVUZKTEVOQlFVTXNUVUZCVFN4clFrRkJhMElzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RFFVRkRMRU5CUVVNN1VVRkRia1lzVDBGQlR5eHhRa0ZCY1VJc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NaVUZCWlN4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEzaEZMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJjVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpkRkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQmJVSXNRMEZCUXp0SlFVTjJSQ3hEUVVGRE8wbEJSVVE3T3pzN08wOUJTMGM3U1VGRFNTeE5RVUZOTEVOQlFVTXNiVUpCUVcxQ0xFTkJRVU1zVVVGQk5FSTdVVUZETlVRc1QwRkJUeXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEdkQ1FVRm5RaXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEYWtRc1EwRkJRenRKUVVWRU96dFBRVVZITzBsQlEwZ3NUVUZCVFN4TFFVRkxMR2xDUVVGcFFqdFJRVU14UWl4UFFVRlBMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1EwRkJRenRKUVVOMlF5eERRVUZETzBOQlEwWWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUpwYlhCdmNuUWdLaUJoY3lCbWJDQm1jbTl0SUNkbVlYTjBaWE4wTFd4bGRtVnVjMmgwWldsdUp6dGNibWx0Y0c5eWRDQjdhbUZ5YjFkcGJtdHNaWEo5SUdaeWIyMGdKMnBoY204dGQybHVhMnhsY2kxMGVYQmxjMk55YVhCMEp6dGNibWx0Y0c5eWRDQjdSR2x6ZEdGdVkyVk5aWFJ5YVdOOUlHWnliMjBnSjBCa1lYUmhaM0p2YXkxc2FXSnlZWEpwWlhNdmRYUnBiSE12YzNKakwzUjVjR1V0WkdWamJHRnlZWFJwYjI1ekp6dGNibWx0Y0c5eWRDQjdYRzRnSUdGemVXMXRaWFJ5YVdORWFYTjBZVzVqWlN4Y2JpQWdZbkpoZFc1Q2JHRnVjWFZsZEVScGMzUmhibU5sTEZ4dUlDQmpiM05wYm1WRWFYTjBZVzVqWlN4Y2JpQWdaR2xqWlVScGMzUmhibU5sTEZ4dUlDQmxkV05zYVdSbFlXNUVhWE4wWVc1alpTeGNiaUFnYUdGdGJXbHVaMFJwYzNSaGJtTmxMRnh1SUNCcmRXeGplbmx1YzJ0cFJHbHpkR0Z1WTJVc1hHNGdJRzFqUTI5dWJtRjFaMmhsZVVScGMzUmhibU5sTEZ4dUlDQnliMmR2ZEVkdmJHUmlaWEpuUkdsemRHRnVZMlVzWEc0Z0lISjFjM05sYkVScGMzUmhibU5sTEZ4dUlDQnpiMnRoYkVScGMzUmhibU5sTEZ4dUlDQjBZVzVwYlc5MGIwUnBjM1JoYm1ObExGeHVJQ0J1ZFcxbGNtbGpSR2x6ZEdGdVkyVXNYRzRnSUhSaGJtbHRiM1J2UkdsemRHRnVZMlZKYm5SQmNuSmhlU3hjYm4wZ1puSnZiU0FuTGk0dlpHbHpkR0Z1WTJVdGJXVjBjbWxqY3kxdFpYUm9iMlJ6Snp0Y2JseHVhVzF3YjNKMElIdGpZV3hqZFd4aGRHVkZkV05zYVdSbFlXNUVhWE4wWVc1alpYMGdabkp2YlNBblFHUmhkR0ZuY205ckxXeHBZbkpoY21sbGN5OTFkR2xzY3k5emNtTXZkbVZqZEc5eUxXOXdaWEpoZEdsdmJuTW5PMXh1YVcxd2IzSjBJRUpwZEVGeWNtRjVJR1p5YjIwZ0owQmtZWFJoWjNKdmF5MXNhV0p5WVhKcFpYTXZkWFJwYkhNdmMzSmpMMkpwZEMxaGNuSmhlU2M3WEc1cGJYQnZjblFnZTFabFkzUnZjaXdnVTNSeWFXNW5SR2xqZEdsdmJtRnllWDBnWm5KdmJTQW5RR1JoZEdGbmNtOXJMV3hwWW5KaGNtbGxjeTkxZEdsc2N5OXpjbU12ZEhsd1pTMWtaV05zWVhKaGRHbHZibk1uTzF4dWFXMXdiM0owSUh0dGJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1ekxDQk5iVVJwYzNSaGJtTmxSblZ1WTNScGIyNXpUbUZ0WlhOOUlHWnliMjBnSnk0dUwyMWhZM0p2Ylc5c1pXTjFiR1V0WkdsemRHRnVZMlV0Wm5WdVkzUnBiMjV6Snp0Y2JtbHRjRzl5ZENCN1JHbHpkR0Z1WTJWTlpYUnlhV056VTNWaWFtVmpkSE1zSUVKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxGeHVJQ0JUZEhKcGJtZE5aWFJ5YVdOelRtRnRaWE1zSUZabFkzUnZjazFsZEhKcFkzTk9ZVzFsY3l3Z1RuVnRZbVZ5VFdWMGNtbGpjMDVoYldWekxDQkpiblJCY25KaGVVMWxkSEpwWTNOT1lXMWxjMzBnWm5KdmJTQW5MaTlqYjI1emRITW5PMXh1WEc1Y2JtVjRjRzl5ZENCamIyNXpkQ0IyWldOMGIzSkVhWE4wWVc1alpVMWxkSEpwWTNOTlpYUm9iMlJ6T2lCN0lGdHVZVzFsT2lCemRISnBibWRkT2lBb2VEb2dWbVZqZEc5eUxDQjVPaUJXWldOMGIzSXBJRDArSUc1MWJXSmxjaUI5SUQwZ2UxeHVJQ0JiVm1WamRHOXlUV1YwY21samMwNWhiV1Z6TGtWMVkyeHBaR1ZoYmwwNklHTmhiR04xYkdGMFpVVjFZMnhwWkdWaGJrUnBjM1JoYm1ObExGeHVmVHRjYmx4dVpYaHdiM0owSUdOdmJuTjBJSE4wY21sdVowUnBjM1JoYm1ObFRXVjBjbWxqYzAxbGRHaHZaSE02SUhzZ1cyNWhiV1U2SUhOMGNtbHVaMTA2SUNoNE9pQnpkSEpwYm1jc0lIazZJSE4wY21sdVp5a2dQVDRnYm5WdFltVnlJSDBnUFNCN1hHNGdJRnRUZEhKcGJtZE5aWFJ5YVdOelRtRnRaWE11VEdWMlpXNXphSFJsYVc1ZE9pQm1iQzVrYVhOMFlXNWpaU3hjYmlBZ1cxTjBjbWx1WjAxbGRISnBZM05PWVcxbGN5NUtZWEp2VjJsdWEyeGxjbDA2SUdwaGNtOVhhVzVyYkdWeUxGeHVJQ0JiVTNSeWFXNW5UV1YwY21samMwNWhiV1Z6TGsxaGJtaGhkSFJoYmwwNklHMWhibWhoZEhSaGJrUnBjM1JoYm1ObExGeHVJQ0JiVTNSeWFXNW5UV1YwY21samMwNWhiV1Z6TGs5dVpXaHZkRjA2SUdOaGRHVm5iM0pwWTJGc1JHbHpkR0Z1WTJVc1hHNTlPMXh1WEc1bGVIQnZjblFnWTI5dWMzUWdZbWwwUVhKeVlYbEVhWE4wWVc1alpVMWxkSEpwWTNOTlpYUm9iMlJ6T2lCN0lGdHVZVzFsT2lCemRISnBibWRkT2lBb2VEb2dRbWwwUVhKeVlYa3NJSGs2SUVKcGRFRnljbUY1S1NBOVBpQnVkVzFpWlhJZ2ZTQTlJSHRjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMbFJoYm1sdGIzUnZYVG9nZEdGdWFXMXZkRzlFYVhOMFlXNWpaU3hjYmlBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa1JwWTJWZE9pQmthV05sUkdsemRHRnVZMlVzWEc0Z0lGdENhWFJCY25KaGVVMWxkSEpwWTNOT1lXMWxjeTVCYzNsdGJXVjBjbWxqWFRvZ1lYTjViVzFsZEhKcFkwUnBjM1JoYm1ObExGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVFuSmhkVzVDYkdGdWNYVmxkRjA2SUdKeVlYVnVRbXhoYm5GMVpYUkVhWE4wWVc1alpTeGNiaUFnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxrTnZjMmx1WlYwNklHTnZjMmx1WlVScGMzUmhibU5sTEZ4dUlDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UzNWc1kzcDVibk5yYVYwNklHdDFiR042ZVc1emEybEVhWE4wWVc1alpTeGNiaUFnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxrMWpRMjl1Ym1GMVoyaGxlVjA2SUcxalEyOXVibUYxWjJobGVVUnBjM1JoYm1ObExGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVVtOW5iM1JIYjJ4a1ltVnlaMTA2SUhKdloyOTBSMjlzWkdKbGNtZEVhWE4wWVc1alpTeGNiaUFnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxsSjFjM05sYkYwNklISjFjM05sYkVScGMzUmhibU5sTEZ4dUlDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11VTI5cllXeGRPaUJ6YjJ0aGJFUnBjM1JoYm1ObExGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVNHRnRiV2x1WjEwNklHaGhiVzFwYm1kRWFYTjBZVzVqWlN4Y2JpQWdXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGtWMVkyeHBaR1ZoYmwwNklHVjFZMnhwWkdWaGJrUnBjM1JoYm1ObExGeHVmVHRjYmx4dVpYaHdiM0owSUdOdmJuTjBJR2x1ZEVGeWNtRjVSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrY3pvZ2V5QmJibUZ0WlRvZ2MzUnlhVzVuWFRvZ0tIZzZJRlZwYm5Rek1rRnljbUY1TENCNU9pQlZhVzUwTXpKQmNuSmhlU2tnUFQ0Z2JuVnRZbVZ5SUgwZ1BTQjdYRzRnSUZ0SmJuUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NVVZVzVwYlc5MGIwbHVkRUZ5Y21GNVhUb2dkR0Z1YVcxdmRHOUVhWE4wWVc1alpVbHVkRUZ5Y21GNUxGeHVmVHRjYmx4dVpYaHdiM0owSUdOdmJuTjBJRzUxYldKbGNrUnBjM1JoYm1ObFRXVjBjbWxqYzAxbGRHaHZaSE02SUhzZ1cyNWhiV1U2SUhOMGNtbHVaMTA2SUNoaGNtZHpPaUJoYm5rcElEMCtJQ2g0T2lCdWRXMWlaWElzSUhrNklHNTFiV0psY2lrZ1BUNGdiblZ0WW1WeUlIMGdQU0I3WEc0Z0lGdE9kVzFpWlhKTlpYUnlhV056VG1GdFpYTXVSR2xtWm1WeVpXNWpaVjA2SUc1MWJXVnlhV05FYVhOMFlXNWpaU3hjYm4wN1hHNWNibVY0Y0c5eWRDQmpiMjV6ZENCQmRtRnBiR0ZpYkdWTlpYUnlhV056SUQwZ2UxeHVJQ0JiUkdsemRHRnVZMlZOWlhSeWFXTnpVM1ZpYW1WamRITXVWbVZqZEc5eVhUb2dlMXh1SUNBZ0lGdFdaV04wYjNKTlpYUnlhV056VG1GdFpYTXVSWFZqYkdsa1pXRnVYVG9nZG1WamRHOXlSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrYzF0V1pXTjBiM0pOWlhSeWFXTnpUbUZ0WlhNdVJYVmpiR2xrWldGdVhTeGNiaUFnZlN4Y2JpQWdXMFJwYzNSaGJtTmxUV1YwY21samMxTjFZbXBsWTNSekxsTjBjbWx1WjEwNklIdGNiaUFnSUNCYlUzUnlhVzVuVFdWMGNtbGpjMDVoYldWekxreGxkbVZ1YzJoMFpXbHVYVG9nYzNSeWFXNW5SR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrYzF0VGRISnBibWROWlhSeWFXTnpUbUZ0WlhNdVRHVjJaVzV6YUhSbGFXNWRMRnh1SUNBZ0lGdFRkSEpwYm1kTlpYUnlhV056VG1GdFpYTXVTbUZ5YjFkcGJtdHNaWEpkT2lCemRISnBibWRFYVhOMFlXNWpaVTFsZEhKcFkzTk5aWFJvYjJSelcxTjBjbWx1WjAxbGRISnBZM05PWVcxbGN5NUtZWEp2VjJsdWEyeGxjbDBzWEc0Z0lDQWdXMU4wY21sdVowMWxkSEpwWTNOT1lXMWxjeTVOWVc1b1lYUjBZVzVkT2lCemRISnBibWRFYVhOMFlXNWpaVTFsZEhKcFkzTk5aWFJvYjJSelcxTjBjbWx1WjAxbGRISnBZM05PWVcxbGN5NU5ZVzVvWVhSMFlXNWRMRnh1SUNBZ0lGdFRkSEpwYm1kTlpYUnlhV056VG1GdFpYTXVUMjVsYUc5MFhUb2djM1J5YVc1blJHbHpkR0Z1WTJWTlpYUnlhV056VFdWMGFHOWtjMXRUZEhKcGJtZE5aWFJ5YVdOelRtRnRaWE11VDI1bGFHOTBYU3hjYmlBZ2ZTeGNiaUFnVzBScGMzUmhibU5sVFdWMGNtbGpjMU4xWW1wbFkzUnpMa0pwZEVGeWNtRjVYVG9nZTF4dUlDQWdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1VVlXNXBiVzkwYjEwNklHSnBkRUZ5Y21GNVJHbHpkR0Z1WTJWTlpYUnlhV056VFdWMGFHOWtjMXRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1VVlXNXBiVzkwYjEwc1hHNGdJQ0FnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxrUnBZMlZkT2lCaWFYUkJjbkpoZVVScGMzUmhibU5sVFdWMGNtbGpjMDFsZEdodlpITmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UkdsalpWMHNYRzRnSUNBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa0Z6ZVcxdFpYUnlhV05kT2lCaWFYUkJjbkpoZVVScGMzUmhibU5sVFdWMGNtbGpjMDFsZEdodlpITmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UVhONWJXMWxkSEpwWTEwc1hHNGdJQ0FnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxrSnlZWFZ1UW14aGJuRjFaWFJkT2lCaWFYUkJjbkpoZVVScGMzUmhibU5sVFdWMGNtbGpjMDFsZEdodlpITmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UW5KaGRXNUNiR0Z1Y1hWbGRGMHNYRzRnSUNBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa052YzJsdVpWMDZJR0pwZEVGeWNtRjVSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrYzF0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NURiM05wYm1WZExGeHVJQ0FnSUZ0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUxkV3hqZW5sdWMydHBYVG9nWW1sMFFYSnlZWGxFYVhOMFlXNWpaVTFsZEhKcFkzTk5aWFJvYjJSelcwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMa3QxYkdONmVXNXphMmxkTEZ4dUlDQWdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1TlkwTnZibTVoZFdkb1pYbGRPaUJpYVhSQmNuSmhlVVJwYzNSaGJtTmxUV1YwY21samMwMWxkR2h2WkhOYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVUV05EYjI1dVlYVm5hR1Y1WFN4Y2JpQWdJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVVtOW5iM1JIYjJ4a1ltVnlaMTA2SUdKcGRFRnljbUY1UkdsemRHRnVZMlZOWlhSeWFXTnpUV1YwYUc5a2MxdENhWFJCY25KaGVVMWxkSEpwWTNOT1lXMWxjeTVTYjJkdmRFZHZiR1JpWlhKblhTeGNiaUFnSUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVVblZ6YzJWc1hUb2dZbWwwUVhKeVlYbEVhWE4wWVc1alpVMWxkSEpwWTNOTlpYUm9iMlJ6VzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxsSjFjM05sYkYwc1hHNGdJQ0FnVzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxsTnZhMkZzWFRvZ1ltbDBRWEp5WVhsRWFYTjBZVzVqWlUxbGRISnBZM05OWlhSb2IyUnpXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGxOdmEyRnNYU3hjYmlBZ2ZTeGNiaUFnVzBScGMzUmhibU5sVFdWMGNtbGpjMU4xWW1wbFkzUnpMazFoWTNKdlRXOXNaV04xYkdWZE9pQjdJQzh2SUc5d2RHbHZibUZzSUdGeVozTWdibVZsWkdWa0lHWnZjaUJ0WVdOeWIyMXZiR1ZqZFd4bElHWjFibU4wYVc5dWN5QjNhR2xqYUNCcGJtbDBhV0ZzYVhwbElIUm9aVzFjYmlBZ0lDQmJUVzFFYVhOMFlXNWpaVVoxYm1OMGFXOXVjMDVoYldWekxraEJUVTFKVGtkZE9pQnRiVVJwYzNSaGJtTmxSblZ1WTNScGIyNXpXMDF0UkdsemRHRnVZMlZHZFc1amRHbHZibk5PWVcxbGN5NUlRVTFOU1U1SFhTeGNiaUFnSUNCYlRXMUVhWE4wWVc1alpVWjFibU4wYVc5dWMwNWhiV1Z6TGt4RlZrVk9VMGhVUlVsT1hUb2diVzFFYVhOMFlXNWpaVVoxYm1OMGFXOXVjMXROYlVScGMzUmhibU5sUm5WdVkzUnBiMjV6VG1GdFpYTXVURVZXUlU1VFNGUkZTVTVkTEZ4dUlDQWdJRnROYlVScGMzUmhibU5sUm5WdVkzUnBiMjV6VG1GdFpYTXVUa1ZGUkV4RlRVRk9UbDlYVlU1VFEwaGRPaUJ0YlVScGMzUmhibU5sUm5WdVkzUnBiMjV6VzAxdFJHbHpkR0Z1WTJWR2RXNWpkR2x2Ym5OT1lXMWxjeTVPUlVWRVRFVk5RVTVPWDFkVlRsTkRTRjBzWEc0Z0lDQWdXMDF0UkdsemRHRnVZMlZHZFc1amRHbHZibk5PWVcxbGN5NU5UMDVQVFVWU1gwTklSVTFKUTBGTVgwUkpVMVJCVGtORlhUcGNiaUFnSUNBZ0lHMXRSR2x6ZEdGdVkyVkdkVzVqZEdsdmJuTmJUVzFFYVhOMFlXNWpaVVoxYm1OMGFXOXVjMDVoYldWekxrMVBUazlOUlZKZlEwaEZUVWxEUVV4ZlJFbFRWRUZPUTBWZExGeHVJQ0I5TEZ4dUlDQmJSR2x6ZEdGdVkyVk5aWFJ5YVdOelUzVmlhbVZqZEhNdVRuVnRZbVZ5WFRvZ2UxeHVJQ0FnSUZ0T2RXMWlaWEpOWlhSeWFXTnpUbUZ0WlhNdVJHbG1abVZ5Wlc1alpWMDZJRzUxYldKbGNrUnBjM1JoYm1ObFRXVjBjbWxqYzAxbGRHaHZaSE5iVG5WdFltVnlUV1YwY21samMwNWhiV1Z6TGtScFptWmxjbVZ1WTJWZExGeHVJQ0I5TEZ4dUlDQmJSR2x6ZEdGdVkyVk5aWFJ5YVdOelUzVmlhbVZqZEhNdVNXNTBRWEp5WVhsZE9pQjdYRzRnSUNBZ1cwbHVkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMbFJoYm1sdGIzUnZTVzUwUVhKeVlYbGRPaUJwYm5SQmNuSmhlVVJwYzNSaGJtTmxUV1YwY21samMwMWxkR2h2WkhOYlNXNTBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVWR0Z1YVcxdmRHOUpiblJCY25KaGVWMHNYRzRnSUgxY2JuMDdYRzVjYm1WNGNHOXlkQ0JqYjI1emRDQk5aWFJ5YVdOVWIwUmhkR0ZVZVhCbE9pQlRkSEpwYm1kRWFXTjBhVzl1WVhKNUlEMGdUMkpxWldOMExtdGxlWE1vUVhaaGFXeGhZbXhsVFdWMGNtbGpjeWxjYmlBZ0xuSmxaSFZqWlNnb2NtVjBPaUJUZEhKcGJtZEVhV04wYVc5dVlYSjVMQ0JyWlhrcElEMCtJSHRjYmlBZ0lDQm1iM0lnS0dOdmJuTjBJSFpoYkNCdlppQlBZbXBsWTNRdWEyVjVjeWhCZG1GcGJHRmliR1ZOWlhSeWFXTnpXMnRsZVNCaGN5QkJkbUZwYkdGaWJHVkVZWFJoVkhsd1pYTmRLU2xjYmlBZ0lDQWdJSEpsZEZ0MllXd2dZWE1nUVhaaGFXeGhZbXhsUkdGMFlWUjVjR1Z6WFNBOUlHdGxlVHRjYmx4dUlDQWdJSEpsZEhWeWJpQnlaWFE3WEc0Z0lIMHNJSHQ5S1R0Y2JseHVaWGh3YjNKMElIUjVjR1VnUVhaaGFXeGhZbXhsUkdGMFlWUjVjR1Z6SUQwZ2EyVjViMllnZEhsd1pXOW1JRUYyWVdsc1lXSnNaVTFsZEhKcFkzTTdYRzVsZUhCdmNuUWdkSGx3WlNCV1pXTjBiM0pOWlhSeWFXTnpJRDBnYTJWNWIyWWdkSGx3Wlc5bUlFRjJZV2xzWVdKc1pVMWxkSEpwWTNOYlJHbHpkR0Z1WTJWTlpYUnlhV056VTNWaWFtVmpkSE11Vm1WamRHOXlYVHRjYm1WNGNHOXlkQ0IwZVhCbElGTjBjbWx1WjAxbGRISnBZM01nUFNCclpYbHZaaUIwZVhCbGIyWWdRWFpoYVd4aFlteGxUV1YwY21samMxdEVhWE4wWVc1alpVMWxkSEpwWTNOVGRXSnFaV04wY3k1VGRISnBibWRkTzF4dVpYaHdiM0owSUhSNWNHVWdRbWwwUVhKeVlYbE5aWFJ5YVdOeklEMGdhMlY1YjJZZ2RIbHdaVzltSUVGMllXbHNZV0pzWlUxbGRISnBZM05iUkdsemRHRnVZMlZOWlhSeWFXTnpVM1ZpYW1WamRITXVRbWwwUVhKeVlYbGRPMXh1Wlhod2IzSjBJSFI1Y0dVZ1MyNXZkMjVOWlhSeWFXTnpJRDBnVTNSeWFXNW5UV1YwY21samN5QjhJRUpwZEVGeWNtRjVUV1YwY21samN5QjhJRlpsWTNSdmNrMWxkSEpwWTNNZ2ZGeHVJQ0JOYlVScGMzUmhibU5sUm5WdVkzUnBiMjV6VG1GdFpYTWdmQ0JPZFcxaVpYSk5aWFJ5YVdOelRtRnRaWE1nZkNCSmJuUkJjbkpoZVUxbGRISnBZM05PWVcxbGN6dGNibHh1Wlhod2IzSjBJSFI1Y0dVZ1ZtRnNhV1JVZVhCbGN5QTlYRzRnSUhzZ1pHRjBZVG9nYzNSeWFXNW5XMTBzSUcxbGRISnBZem9nVTNSeWFXNW5UV1YwY21samN5QjhJRTF0UkdsemRHRnVZMlZHZFc1amRHbHZibk5PWVcxbGN5QjlJSHhjYmlBZ2V5QmtZWFJoT2lCV1pXTjBiM0piWFN3Z2JXVjBjbWxqT2lCV1pXTjBiM0pOWlhSeWFXTnpJSDBnZkZ4dUlDQjdJR1JoZEdFNklFSnBkRUZ5Y21GNVcxMHNJRzFsZEhKcFl6b2dRbWwwUVhKeVlYbE5aWFJ5YVdOeklIMGdmRnh1SUNCN0lHUmhkR0U2SUc1MWJXSmxjbHRkTENCdFpYUnlhV002SUU1MWJXSmxjazFsZEhKcFkzTk9ZVzFsY3lCOU8xeHVYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdhWE5UZEhKcGJtZE5aWFJ5YVdNb2JtRnRaVG9nUzI1dmQyNU5aWFJ5YVdOektTQjdYRzRnSUhKbGRIVnliaUJOWlhSeWFXTlViMFJoZEdGVWVYQmxXMjVoYldWZElEMDlJQ2RUZEhKcGJtY25PMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2FYTkNhWFJCY25KaGVVMWxkSEpwWXlodVlXMWxPaUJMYm05M2JrMWxkSEpwWTNNcElIdGNiaUFnY21WMGRYSnVJRTFsZEhKcFkxUnZSR0YwWVZSNWNHVmJibUZ0WlYwZ1BUMGdKMEpwZEVGeWNtRjVKenRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHbHpWbVZqZEc5eVRXVjBjbWxqS0c1aGJXVTZJRXR1YjNkdVRXVjBjbWxqY3lrZ2UxeHVJQ0J5WlhSMWNtNGdUV1YwY21salZHOUVZWFJoVkhsd1pWdHVZVzFsWFNBOVBTQW5WbVZqZEc5eUp6dGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdselRXRmpjbTlOYjJ4bFkzVnNaVTFsZEhKcFl5aHVZVzFsT2lCTGJtOTNiazFsZEhKcFkzTXBJSHRjYmlBZ2NtVjBkWEp1SUUxbGRISnBZMVJ2UkdGMFlWUjVjR1ZiYm1GdFpWMGdQVDBnUkdsemRHRnVZMlZOWlhSeWFXTnpVM1ZpYW1WamRITXVUV0ZqY205TmIyeGxZM1ZzWlM1MGIxTjBjbWx1WnlncE8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYVhOT2RXMWxjbWxqVFdWMGNtbGpLRzVoYldVNklFdHViM2R1VFdWMGNtbGpjeWtnZTF4dUlDQnlaWFIxY200Z1RXVjBjbWxqVkc5RVlYUmhWSGx3WlZ0dVlXMWxYU0E5UFNCRWFYTjBZVzVqWlUxbGRISnBZM05UZFdKcVpXTjBjeTVPZFcxaVpYSXVkRzlUZEhKcGJtY29LVHRjYm4xY2JseHVMeW9xSUUxaGJtaGhkSFJoYmlCa2FYTjBZVzVqWlNCaVpYUjNaV1Z1SUhSM2J5QnpaWEYxWlc1alpYTWdLRzFoZEdOb0lDMGdNQ3dnYldsemJXRjBZMmdnTFNBeEtTQnViM0p0WVd4cGVtVmtJR1p2Y2lCc1pXNW5kR2d1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2JXRnVhR0YwZEdGdVJHbHpkR0Z1WTJVb2N6RTZJSE4wY21sdVp5d2djekk2SUhOMGNtbHVaeWs2SUc1MWJXSmxjaUI3WEc0Z0lHbG1JQ2h6TVM1c1pXNW5kR2dnSVQwOUlITXlMbXhsYm1kMGFDa2dlMXh1SUNBZ0lISmxkSFZ5YmlBeE8xeHVJQ0I5SUdWc2MyVWdlMXh1SUNBZ0lHeGxkQ0JrYVhOME9pQnVkVzFpWlhJZ1BTQXdPMXh1SUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F4T3lCcElEd2djekV1YkdWdVozUm9PeUJwS3lzcFhHNGdJQ0FnSUNCa2FYTjBJQ3M5SUhNeFcybGRJRDA5SUhNeVcybGRJRDhnTUNBNklERTdYRzRnSUNBZ2NtVjBkWEp1SUdScGMzUWdMeUJ6TVM1c1pXNW5kR2c3WEc0Z0lIMWNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdOaGRHVm5iM0pwWTJGc1JHbHpkR0Z1WTJVb2N6RTZJSE4wY21sdVp5d2djekk2SUhOMGNtbHVaeWs2SUc1MWJXSmxjaUI3WEc0Z0lISmxkSFZ5YmlCek1TQTlQVDBnY3pJZ1B5QXdJRG9nTVR0Y2JuMWNibHh1THlvcUlGVnVhV1pwWldRZ1kyeGhjM01nYVcxd2JHVnRaVzUwYVc1bklHUnBabVpsY21WdWRDQnpkSEpwYm1jZ2JXVmhjM1Z5WlhNdUlDb3ZYRzVsZUhCdmNuUWdZMnhoYzNNZ1RXVmhjM1Z5WlNCN1hHNGdJSEJ5YjNSbFkzUmxaQ0J0WlhSb2IyUTZJRXR1YjNkdVRXVjBjbWxqY3p0Y2JpQWdjSEp2ZEdWamRHVmtJR1JoZEdGVWVYQmxPaUJCZG1GcGJHRmliR1ZFWVhSaFZIbHdaWE03WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRU55WldGMFpYTWdZVzRnYVc1emRHRnVZMlVnYjJZZ1RXVmhjM1Z5WlNCM2FYUm9JQzVjYmlBZ0lDb2dRSEJoY21GdElIdHpkSEpwYm1kOUlHMWxkR2h2WkNCTlpYUm9iMlFnZEc4Z1kyRnNZM1ZzWVhSbElHUnBjM1JoYm1ObElHSmxkSGRsWlc0Z2MzUnlhVzVuY3k1Y2JpQWdJQ29nUUcxbGJXSmxjbTltSUUxbFlYTjFjbVZ5WEc0Z0lDQXFMMXh1SUNCamIyNXpkSEoxWTNSdmNpaHRaWFJvYjJRNklFdHViM2R1VFdWMGNtbGpjeWtnZTF4dUlDQWdJSFJvYVhNdWJXVjBhRzlrSUQwZ2JXVjBhRzlrTzF4dUlDQWdJSFJvYVhNdVpHRjBZVlI1Y0dVZ1BTQk5aWFJ5YVdOVWIwUmhkR0ZVZVhCbFcyMWxkR2h2WkYwZ1lYTWdRWFpoYVd4aFlteGxSR0YwWVZSNWNHVnpPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUZKbGRIVnlibk1nWTNWemRHOXRJSE4wY21sdVp5QmthWE4wWVc1alpTQm1kVzVqZEdsdmJpQnpjR1ZqYVdacFpXUXVYRzRnSUNBcUlFQndZWEpoYlNCN2IzQjBjMzBnYjNCMGN5QlBjSFJwYjI1eklHWnZjaUIwYUdVZ2JXVmhjM1Z5WlM0Z2RYTmxaQ0JtYjNJZ2JXRmpjbTl0YjJ4bFkzVnNaU0JrYVhOMFlXNWpaWE5jYmlBZ0lDb2dRSEpsZEhWeWJpQjdSR2x6ZEdGdVkyVk5aWFJ5YVdOOUlFTmhiR3hpWVdOcklHOW1JSFJvWlNCdFpXRnpkWEpsSUdOb2IzTmxiaTVjYmlBZ0lDb2dRRzFsYldKbGNtOW1JRTFsWVhOMWNtVnlYRzRnSUNBcUwxeHVJQ0J3ZFdKc2FXTWdaMlYwVFdWaGMzVnlaU2h2Y0hSelB6b2dZVzU1S1RvZ1JHbHpkR0Z1WTJWTlpYUnlhV01nZTF4dUlDQWdJR052Ym5OMElHUnBZM1E2SUhzZ1cydGxlVG9nYzNSeWFXNW5YVHBjYmlBZ0lDQWdJSHRiYTJWNU1qb2djM1J5YVc1blhUb2dSR2x6ZEdGdVkyVk5aWFJ5YVdNZ2ZDQW9LRzl3ZEhNNklHRnVlU2tnUFQ0Z1JHbHpkR0Z1WTJWTlpYUnlhV01wZlZ4dUlDQWdJSDBnUFNCQmRtRnBiR0ZpYkdWTlpYUnlhV056TzF4dUlDQWdJR2xtSUNnaFpHbGpkQzVvWVhOUGQyNVFjbTl3WlhKMGVTaDBhR2x6TG1SaGRHRlVlWEJsS1NCOGZDQWhaR2xqZEZ0MGFHbHpMbVJoZEdGVWVYQmxYUzVvWVhOUGQyNVFjbTl3WlhKMGVTaDBhR2x6TG0xbGRHaHZaQ2twWEc0Z0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9ZRlZ1YTI1dmQyNGdiV1ZoYzNWeVpTQWtlM1JvYVhNdWJXVjBhRzlrZlNCbWIzSWdaR0YwWVNCMGVYQmxJQ1I3ZEdocGN5NWtZWFJoVkhsd1pYMWdLVHRjYmlBZ0lDQnlaWFIxY200Z2FYTk5ZV055YjAxdmJHVmpkV3hsVFdWMGNtbGpLSFJvYVhNdWJXVjBhRzlrS1NCOGZDQnBjMDUxYldWeWFXTk5aWFJ5YVdNb2RHaHBjeTV0WlhSb2IyUXBJRDljYmlBZ0lDQWdJQ2hrYVdOMFczUm9hWE11WkdGMFlWUjVjR1ZkVzNSb2FYTXViV1YwYUc5a1hTQmhjeUFvS0c5d2RITTZJR0Z1ZVNrZ1BUNGdSR2x6ZEdGdVkyVk5aWFJ5YVdNcEtTaHZjSFJ6S1NBNlhHNGdJQ0FnSUNCa2FXTjBXM1JvYVhNdVpHRjBZVlI1Y0dWZFczUm9hWE11YldWMGFHOWtYU0JoY3lCRWFYTjBZVzVqWlUxbGRISnBZenRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCU1pYUjFjbTV6SUdOMWMzUnZiU0J6ZEhKcGJtY2daR2x6ZEdGdVkyVWdZbmtnZEdobElHZHBkbVZ1SUdSaGRHRWdkSGx3WlM1Y2JpQWdJQ29nUUhCaGNtRnRJSHRCZG1GcGJHRmliR1ZFWVhSaFZIbHdaWE45SUdSaGRHRlVlWEJsSUUxbGRISnBZeWR6SUdSaGRHRWdkSGx3WlZ4dUlDQWdLaUJBY21WMGRYSnVJSHR6ZEhKcGJtZGJYWDBnVFdWMGNtbGpJRzVoYldWeklIZG9hV05vSUdWNGNHVmpkSE1nZEdobElHZHBkbVZ1SUdSaGRHRWdkSGx3WlZ4dUlDQWdLaUJBYldWdFltVnliMllnVFdWaGMzVnlaWEpjYmlBZ0lDb3ZYRzRnSUhCMVlteHBZeUJ6ZEdGMGFXTWdaMlYwVFdWMGNtbGpRbmxFWVhSaFZIbHdaU2hrWVhSaFZIbHdaVG9nUVhaaGFXeGhZbXhsUkdGMFlWUjVjR1Z6S1RvZ2MzUnlhVzVuVzEwZ2UxeHVJQ0FnSUhKbGRIVnliaUJQWW1wbFkzUXVhMlY1Y3loQmRtRnBiR0ZpYkdWTlpYUnlhV056VzJSaGRHRlVlWEJsWFNrN1hHNGdJSDFjYmx4dUlDQXZLaW9nVW1WMGRYSnVjeUJ0WlhSeWFXTWdibUZ0WlhNZ1lYWmhhV3hoWW14bExseHVJQ0FnS2lCQWJXVnRZbVZ5YjJZZ1RXVmhjM1Z5WlhKY2JpQWdJQ292WEc0Z0lITjBZWFJwWXlCblpYUWdZWFpoYVd4aFlteGxUV1ZoYzNWeVpYTW9LVG9nYzNSeWFXNW5XMTBnZTF4dUlDQWdJSEpsZEhWeWJpQlBZbXBsWTNRdWEyVjVjeWhCZG1GcGJHRmliR1ZOWlhSeWFXTnpLVHRjYmlBZ2ZWeHVmVnh1SWwxOSIsImltcG9ydCB7IERpc3RhbmNlQWdncmVnYXRpb25NZXRob2RzIH0gZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgY2xhc3MgRGlzdGFuY2VNYXRyaXhTZXJ2aWNlIHtcbiAgICBfd29ya2VycztcbiAgICBfd29ya2VyQ291bnQ7XG4gICAgX3Rlcm1pbmF0ZU9uQ29tcGxldGU7XG4gICAgY29uc3RydWN0b3IodXNlQ29uY3VycmVudFdvcmtlcnMgPSB0cnVlLCB0ZXJtaW5hdGVPbkNvbXBsZXRlID0gdHJ1ZSkge1xuICAgICAgICBjb25zdCB0aHJlYWRDb3VudCA9IG5hdmlnYXRvci5oYXJkd2FyZUNvbmN1cnJlbmN5O1xuICAgICAgICB0aGlzLl93b3JrZXJDb3VudCA9IHVzZUNvbmN1cnJlbnRXb3JrZXJzID8gTWF0aC5tYXgodGhyZWFkQ291bnQgLSAyLCAxKSA6IDE7XG4gICAgICAgIHRoaXMuX3dvcmtlcnMgPSBuZXcgQXJyYXkodGhpcy5fd29ya2VyQ291bnQpLmZpbGwobnVsbClcbiAgICAgICAgICAgIC5tYXAoKCkgPT4gbmV3IFdvcmtlcihuZXcgVVJMKCcuL2Rpc3RhbmNlLW1hdHJpeC13b3JrZXInLCBpbXBvcnQubWV0YS51cmwpKSk7XG4gICAgICAgIHRoaXMuX3Rlcm1pbmF0ZU9uQ29tcGxldGUgPSB0ZXJtaW5hdGVPbkNvbXBsZXRlO1xuICAgIH1cbiAgICA7XG4gICAgYXN5bmMgY2FsYyh2YWx1ZXMsIGZuTmFtZSwgbm9ybWFsaXplID0gdHJ1ZSwgb3B0cykge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5jYWxjTXVsdGkoW3ZhbHVlc10sIFtmbk5hbWVdLCBub3JtYWxpemUsIFtvcHRzID8/IHt9XSwgWzFdLCBEaXN0YW5jZUFnZ3JlZ2F0aW9uTWV0aG9kcy5NQU5IQVRUQU4pO1xuICAgIH1cbiAgICBhc3luYyBjYWxjTXVsdGkodmFsdWVzLCBmbk5hbWVzLCBub3JtYWxpemUgPSB0cnVlLCBvcHRzID0gW3t9XSwgd2VpZ2h0cyA9IFsxXSwgYWdncmVnYXRpb25NZXRob2QgPSBEaXN0YW5jZUFnZ3JlZ2F0aW9uTWV0aG9kcy5NQU5IQVRUQU4pIHtcbiAgICAgICAgaWYgKHZhbHVlcy5sZW5ndGggPCAxKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd2YWx1ZXMgbXVzdCBjb250YWluIGF0IGxlYXN0IG9uZSBhcnJheScpO1xuICAgICAgICBpZiAoZm5OYW1lcy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGggfHwgb3B0cy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGggfHwgd2VpZ2h0cy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGgpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3ZhbHVlcywgZm5OYW1lcywgd2VpZ2h0cyBhbmQgb3B0cyBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoJyk7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShhc3luYyAocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxlbiA9IHZhbHVlc1swXS5sZW5ndGg7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJvbWlzZXMgPSBuZXcgQXJyYXkodGhpcy5fd29ya2VyQ291bnQpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsTGVuZ3RoID0gbGVuICogKGxlbiAtIDEpIC8gMjsgLy8gc2l6ZSBvZiByZWR1Y2VkIGRpc3RhbmNlIG1hdHJpeFxuICAgICAgICAgICAgICAgIHRoaXMuX3dvcmtlckNvdW50ID0gTWF0aC5taW4odGhpcy5fd29ya2VyQ291bnQsIHRvdGFsTGVuZ3RoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjaHVua1NpemUgPSB0b3RhbExlbmd0aCAvIHRoaXMuX3dvcmtlckNvdW50O1xuICAgICAgICAgICAgICAgIGNvbnN0IGRpc3RhbmNlTWF0cml4ID0gbmV3IEZsb2F0MzJBcnJheSh0b3RhbExlbmd0aCk7XG4gICAgICAgICAgICAgICAgbGV0IGVuZFJvdyA9IDA7XG4gICAgICAgICAgICAgICAgbGV0IGVuZENvbCA9IDE7XG4gICAgICAgICAgICAgICAgLy8gbWlubWF4IGZvciBub3JtYWxpemF0aW9uXG4gICAgICAgICAgICAgICAgbGV0IGxtaW4gPSAwO1xuICAgICAgICAgICAgICAgIGxldCBsbWF4ID0gTnVtYmVyLk1JTl9WQUxVRTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX3dvcmtlckNvdW50OyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBNYXRoLmZsb29yKGkgKiBjaHVua1NpemUpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmQgPSAoaSA9PT0gdGhpcy5fd29ya2VyQ291bnQgLSAxKSA/IHRvdGFsTGVuZ3RoIDogTWF0aC5mbG9vcigoaSArIDEpICogY2h1bmtTaXplKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnRSb3cgPSBlbmRSb3c7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0Q29sID0gZW5kQ29sO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaSAhPT0gdGhpcy5fd29ya2VyQ291bnQgLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUaGVzZSBmb3JtdWxhcyBtYXAgdGhlIGxpbmVhciBpbmRleCB0byB0aGUgdXBwZXIgdHJpYW5ndWxhciBtYXRyaXggaW5kaWNlc1xuICAgICAgICAgICAgICAgICAgICAgICAgZW5kUm93ID0gbGVuIC0gMiAtIE1hdGguZmxvb3IoTWF0aC5zcXJ0KC04ICogZW5kICsgNCAqIGxlbiAqIChsZW4gLSAxKSAtIDcpIC8gMiAtIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRDb2wgPSBlbmQgLSBsZW4gKiBlbmRSb3cgKyBNYXRoLmZsb29yKChlbmRSb3cgKyAxKSAqIChlbmRSb3cgKyAyKSAvIDIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3dvcmtlcnNbaV0ucG9zdE1lc3NhZ2UoeyB2YWx1ZXMsIGZuTmFtZXMsIHN0YXJ0Um93LCBzdGFydENvbCwgY2h1bmNrU2l6ZTogZW5kIC0gc3RhcnQsIG9wdHMsIHdlaWdodHMsIGFnZ3JlZ2F0aW9uTWV0aG9kIH0pO1xuICAgICAgICAgICAgICAgICAgICBwcm9taXNlc1tpXSA9IG5ldyBQcm9taXNlKChyZXNvbHZlV29ya2VyLCByZWplY3RXb3JrZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3dvcmtlcnNbaV0ub25tZXNzYWdlID0gKHsgZGF0YTogeyBlcnJvciwgZGlzdGFuY2VNYXRyaXhEYXRhLCBtaW4sIG1heCB9IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl90ZXJtaW5hdGVPbkNvbXBsZXRlICYmIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fd29ya2Vyc1tpXS50ZXJtaW5hdGUoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlamVjdFdvcmtlcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZU1hdHJpeC5zZXQoZGlzdGFuY2VNYXRyaXhEYXRhLCBzdGFydCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtaW4gPCBsbWluKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG1pbiA9IG1pbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1heCA+IGxtYXgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsbWF4ID0gbWF4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlV29ya2VyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKTtcbiAgICAgICAgICAgICAgICBpZiAobm9ybWFsaXplKVxuICAgICAgICAgICAgICAgICAgICBkaXN0YW5jZU1hdHJpeC5mb3JFYWNoKCh2YWx1ZSwgaW5kZXgpID0+IHsgZGlzdGFuY2VNYXRyaXhbaW5kZXhdID0gKHZhbHVlIC0gbG1pbikgLyAobG1heCAtIGxtaW4pOyB9KTtcbiAgICAgICAgICAgICAgICByZXNvbHZlKGRpc3RhbmNlTWF0cml4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgdGVybWluYXRlKCkge1xuICAgICAgICB0aGlzLl93b3JrZXJzLmZvckVhY2goKHdvcmtlcikgPT4gd29ya2VyLnRlcm1pbmF0ZSgpKTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2laR2x6ZEdGdVkyVXRiV0YwY21sNExYTmxjblpwWTJVdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUprYVhOMFlXNWpaUzF0WVhSeWFYZ3RjMlZ5ZG1salpTNTBjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZEUVN4UFFVRlBMRVZCUVRSQ0xEQkNRVUV3UWl4RlFVRkRMRTFCUVUwc1UwRkJVeXhEUVVGRE8wRkJSVGxGTEUxQlFVMHNUMEZCVHl4eFFrRkJjVUk3U1VGRGRFSXNVVUZCVVN4RFFVRlhPMGxCUTI1Q0xGbEJRVmtzUTBGQlV6dEpRVU55UWl4dlFrRkJiMElzUTBGQlZUdEpRVU4wUXl4WlFVRnRRaXh2UWtGQmIwSXNSMEZCUnl4SlFVRkpMRVZCUVVVc2JVSkJRVzFDTEVkQlFVY3NTVUZCU1R0UlFVTjRSU3hOUVVGTkxGZEJRVmNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNiVUpCUVcxQ0xFTkJRVU03VVVGRGJFUXNTVUZCU1N4RFFVRkRMRmxCUVZrc1IwRkJSeXh2UWtGQmIwSXNRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eFhRVUZYTEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZETlVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUjBGQlJ5eEpRVUZKTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXp0aFFVTndSQ3hIUVVGSExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNTVUZCU1N4TlFVRk5MRU5CUVVNc1NVRkJTU3hIUVVGSExFTkJRVU1zTUVKQlFUQkNMRVZCUVVVc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRMMFVzU1VGQlNTeERRVUZETEc5Q1FVRnZRaXhIUVVGSExHMUNRVUZ0UWl4RFFVRkRPMGxCUTJ4RUxFTkJRVU03U1VGQlFTeERRVUZETzBsQlJVc3NTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGclFpeEZRVUZGTEUxQlFXOUNMRVZCUTNoRUxGTkJRVk1zUjBGQlJ5eEpRVUZKTEVWQlFVVXNTVUZCZVVJN1VVRkRNME1zVDBGQlR5eE5RVUZOTEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4RlFVRkZMRk5CUVZNc1JVRkRka1FzUTBGQlF5eEpRVUZKTEVsQlFVa3NSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTd3dRa0ZCTUVJc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dEpRVU0zUkN4RFFVRkRPMGxCUlUwc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGRGNFSXNUVUZCYjBJc1JVRkJSU3hQUVVGMVFpeEZRVU0zUXl4VFFVRlRMRWRCUVVjc1NVRkJTU3hGUVVGRkxFOUJRVFpDTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUTI1RUxGVkJRVzlDTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc2IwSkJRU3RETERCQ1FVRXdRaXhEUVVGRExGTkJRVk03VVVGRk5VY3NTVUZCU1N4TlFVRk5MRU5CUVVNc1RVRkJUU3hIUVVGSExFTkJRVU03V1VGRGJrSXNUVUZCVFN4SlFVRkpMRXRCUVVzc1EwRkJReXgzUTBGQmQwTXNRMEZCUXl4RFFVRkRPMUZCUXpWRUxFbEJRVWtzVDBGQlR5eERRVUZETEUxQlFVMHNTMEZCU3l4TlFVRk5MRU5CUVVNc1RVRkJUU3hKUVVGSkxFbEJRVWtzUTBGQlF5eE5RVUZOTEV0QlFVc3NUVUZCVFN4RFFVRkRMRTFCUVUwc1NVRkJTU3hQUVVGUExFTkJRVU1zVFVGQlRTeExRVUZMTEUxQlFVMHNRMEZCUXl4TlFVRk5PMWxCUTNaSExFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNOa1JCUVRaRUxFTkJRVU1zUTBGQlF6dFJRVU5xUml4UFFVRlBMRWxCUVVrc1QwRkJUeXhEUVVGRExFdEJRVXNzUlVGQlJTeFBRVUZQTEVWQlFVVXNUVUZCVFN4RlFVRkZMRVZCUVVVN1dVRkRNME1zU1VGQlNUdG5Ra0ZEUml4TlFVRk5MRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRPMmRDUVVNM1FpeE5RVUZOTEZGQlFWRXNSMEZCUnl4SlFVRkpMRXRCUVVzc1EwRkJaMElzU1VGQlNTeERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPMmRDUVVNM1JDeE5RVUZOTEZkQlFWY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc2EwTkJRV3RETzJkQ1FVTXpSU3hKUVVGSkxFTkJRVU1zV1VGQldTeEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVGRExGbEJRVmtzUlVGQlJTeFhRVUZYTEVOQlFVTXNRMEZCUXp0blFrRkROMFFzVFVGQlRTeFRRVUZUTEVkQlFVY3NWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJReXhaUVVGWkxFTkJRVU03WjBKQlEyeEVMRTFCUVUwc1kwRkJZeXhIUVVGSExFbEJRVWtzV1VGQldTeERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRPMmRDUVVOeVJDeEpRVUZKTEUxQlFVMHNSMEZCUnl4RFFVRkRMRU5CUVVNN1owSkJRMllzU1VGQlNTeE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVObUxESkNRVUV5UWp0blFrRkRNMElzU1VGQlNTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVOaUxFbEJRVWtzU1VGQlNTeEhRVUZITEUxQlFVMHNRMEZCUXl4VFFVRlRMRU5CUVVNN1owSkJRelZDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yOUNRVU14UXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNSMEZCUnl4VFFVRlRMRU5CUVVNc1EwRkJRenR2UWtGRGVFTXNUVUZCVFN4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFdEJRVXNzU1VGQlNTeERRVUZETEZsQlFWa3NSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVjBGQlZ5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRk5CUVZNc1EwRkJReXhEUVVGRE8yOUNRVU14Uml4TlFVRk5MRkZCUVZFc1IwRkJSeXhOUVVGTkxFTkJRVU03YjBKQlEzaENMRTFCUVUwc1VVRkJVU3hIUVVGSExFMUJRVTBzUTBGQlF6dHZRa0ZEZUVJc1NVRkJTU3hEUVVGRExFdEJRVXNzU1VGQlNTeERRVUZETEZsQlFWa3NSMEZCUnl4RFFVRkRMRVZCUVVVN2QwSkJReTlDTERaRlFVRTJSVHQzUWtGRE4wVXNUVUZCVFN4SFFVRkhMRWRCUVVjc1IwRkJSeXhEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NSMEZCUnl4RFFVRkRMRWRCUVVjc1IwRkJSeXhIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0M1FrRkRka1lzVFVGQlRTeEhRVUZITEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03Y1VKQlF6TkZPMjlDUVVORUxFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1YwRkJWeXhEUVVNeFFpeEZRVUZETEUxQlFVMHNSVUZCUlN4UFFVRlBMRVZCUVVVc1VVRkJVU3hGUVVGRkxGRkJRVkVzUlVGQlJTeFZRVUZWTEVWQlFVVXNSMEZCUnl4SFFVRkhMRXRCUVVzc1JVRkJSU3hKUVVGSkxFVkJRVVVzVDBGQlR5eEZRVUZGTEdsQ1FVRnBRaXhGUVVGRExFTkJRMnBITEVOQlFVTTdiMEpCUTBZc1VVRkJVU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NUMEZCVHl4RFFVRkRMRU5CUVVNc1lVRkJZU3hGUVVGRkxGbEJRVmtzUlVGQlJTeEZRVUZGTzNkQ1FVTjRSQ3hKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRk5CUVZNc1IwRkJSeXhEUVVGRExFVkJRVU1zU1VGQlNTeEZRVUZGTEVWQlFVTXNTMEZCU3l4RlFVRkZMR3RDUVVGclFpeEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRVZCUVVNc1JVRkJReXhGUVVGUkxFVkJRVVU3TkVKQlEyNUdMRWxCUVVrc1EwRkJReXh2UWtGQmIwSXNTVUZCU1N4VlFVRlZMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhUUVVGVExFVkJRVVVzUTBGQlF5eERRVUZET3pSQ1FVTTFSU3hKUVVGSkxFdEJRVXNzUlVGQlJUdG5RMEZEVkN4WlFVRlpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03TmtKQlEzSkNPMmxEUVVGTk8yZERRVU5NTEdOQlFXTXNRMEZCUXl4SFFVRkhMRU5CUVVNc2EwSkJRV3RDTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1owTkJRemxETEVsQlFVa3NSMEZCUnl4SFFVRkhMRWxCUVVrN2IwTkJRMW9zU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXp0blEwRkRZaXhKUVVGSkxFZEJRVWNzUjBGQlJ5eEpRVUZKTzI5RFFVTmFMRWxCUVVrc1IwRkJSeXhIUVVGSExFTkJRVU03WjBOQlEySXNZVUZCWVN4RlFVRkZMRU5CUVVNN05rSkJRMnBDTzNkQ1FVTklMRU5CUVVNc1EwRkJRenR2UWtGRFNpeERRVUZETEVOQlFVTXNRMEZCUXp0cFFrRkRTanRuUWtGRFJDeE5RVUZOTEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU03WjBKQlF6VkNMRWxCUVVrc1UwRkJVenR2UWtGRFdDeGpRVUZqTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFdEJRVXNzUlVGQlJTeEZRVUZGTEVkQlFVY3NZMEZCWXl4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUzBGQlN5eEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1NVRkJTU3hIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1owSkJRM2hITEU5QlFVOHNRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJRenRoUVVONlFqdFpRVUZETEU5QlFVOHNRMEZCUXl4RlFVRkZPMmRDUVVOV0xFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0aFFVTllPMUZCUTBnc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRFRDeERRVUZETzBsQlJVMHNVMEZCVXp0UlFVTmtMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNUVUZCVFN4RlFVRkZMRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTXNRMEZCUXp0SlFVTjRSQ3hEUVVGRE8wTkJRMG9pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKcGJYQnZjblFnZTB0dWIzZHVUV1YwY21samMzMGdabkp2YlNBbkxpNHZkSGx3WldRdGJXVjBjbWxqY3ljN1hHNXBiWEJ2Y25RZ2UwUnBjM1JoYm1ObFFXZG5jbVZuWVhScGIyNU5aWFJvYjJRc0lFUnBjM1JoYm1ObFFXZG5jbVZuWVhScGIyNU5aWFJvYjJSemZTQm1jbTl0SUNjdUwzUjVjR1Z6Snp0Y2JseHVaWGh3YjNKMElHTnNZWE56SUVScGMzUmhibU5sVFdGMGNtbDRVMlZ5ZG1salpTQjdYRzRnSUNBZ2NISnBkbUYwWlNCZmQyOXlhMlZ5Y3pvZ1YyOXlhMlZ5VzEwN1hHNGdJQ0FnY0hKcGRtRjBaU0JmZDI5eWEyVnlRMjkxYm5RNklHNTFiV0psY2p0Y2JpQWdJQ0J3Y21sMllYUmxJRjkwWlhKdGFXNWhkR1ZQYmtOdmJYQnNaWFJsT2lCaWIyOXNaV0Z1TzF4dUlDQWdJSEIxWW14cFl5QmpiMjV6ZEhKMVkzUnZjaWgxYzJWRGIyNWpkWEp5Wlc1MFYyOXlhMlZ5Y3lBOUlIUnlkV1VzSUhSbGNtMXBibUYwWlU5dVEyOXRjR3hsZEdVZ1BTQjBjblZsS1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0IwYUhKbFlXUkRiM1Z1ZENBOUlHNWhkbWxuWVhSdmNpNW9ZWEprZDJGeVpVTnZibU4xY25KbGJtTjVPMXh1SUNBZ0lDQWdkR2hwY3k1ZmQyOXlhMlZ5UTI5MWJuUWdQU0IxYzJWRGIyNWpkWEp5Wlc1MFYyOXlhMlZ5Y3lBL0lFMWhkR2d1YldGNEtIUm9jbVZoWkVOdmRXNTBJQzBnTWl3Z01Ta2dPaUF4TzF4dUlDQWdJQ0FnZEdocGN5NWZkMjl5YTJWeWN5QTlJRzVsZHlCQmNuSmhlU2gwYUdsekxsOTNiM0pyWlhKRGIzVnVkQ2t1Wm1sc2JDaHVkV3hzS1Z4dUlDQWdJQ0FnSUNBdWJXRndLQ2dwSUQwK0lHNWxkeUJYYjNKclpYSW9ibVYzSUZWU1RDZ25MaTlrYVhOMFlXNWpaUzF0WVhSeWFYZ3RkMjl5YTJWeUp5d2dhVzF3YjNKMExtMWxkR0V1ZFhKc0tTa3BPMXh1SUNBZ0lDQWdkR2hwY3k1ZmRHVnliV2x1WVhSbFQyNURiMjF3YkdWMFpTQTlJSFJsY20xcGJtRjBaVTl1UTI5dGNHeGxkR1U3WEc0Z0lDQWdmVHRjYmx4dUlDQWdJSEIxWW14cFl5QmhjM2x1WXlCallXeGpLSFpoYkhWbGN6b2dRWEp5WVhrOFlXNTVQaXdnWm01T1lXMWxPaUJMYm05M2JrMWxkSEpwWTNNc1hHNGdJQ0FnSUNCdWIzSnRZV3hwZW1VZ1BTQjBjblZsTENCdmNIUnpQem9nZTF0Zk9pQnpkSEpwYm1kZE9pQmhibmw5S1RvZ1VISnZiV2x6WlR4R2JHOWhkRE15UVhKeVlYaytJSHRjYmlBZ0lDQWdJSEpsZEhWeWJpQmhkMkZwZENCMGFHbHpMbU5oYkdOTmRXeDBhU2hiZG1Gc2RXVnpYU3dnVzJadVRtRnRaVjBzSUc1dmNtMWhiR2w2WlN4Y2JpQWdJQ0FnSUNBZ1cyOXdkSE1nUHo4Z2UzMWRMQ0JiTVYwc0lFUnBjM1JoYm1ObFFXZG5jbVZuWVhScGIyNU5aWFJvYjJSekxrMUJUa2hCVkZSQlRpazdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2NIVmliR2xqSUdGemVXNWpJR05oYkdOTmRXeDBhU2hjYmlBZ0lDQWdJSFpoYkhWbGN6b2dRWEp5WVhrOFlXNTVQbHRkTENCbWJrNWhiV1Z6T2lCTGJtOTNiazFsZEhKcFkzTmJYU3hjYmlBZ0lDQWdJRzV2Y20xaGJHbDZaU0E5SUhSeWRXVXNJRzl3ZEhNNklIdGJYem9nYzNSeWFXNW5YVG9nWVc1NWZWdGRJRDBnVzN0OVhTeGNiaUFnSUNBZ0lIZGxhV2RvZEhNNklHNTFiV0psY2x0ZElEMGdXekZkTENCaFoyZHlaV2RoZEdsdmJrMWxkR2h2WkRvZ1JHbHpkR0Z1WTJWQloyZHlaV2RoZEdsdmJrMWxkR2h2WkNBOUlFUnBjM1JoYm1ObFFXZG5jbVZuWVhScGIyNU5aWFJvYjJSekxrMUJUa2hCVkZSQlRseHVJQ0FnSUNrNklGQnliMjFwYzJVOFJteHZZWFF6TWtGeWNtRjVQaUI3WEc0Z0lDQWdJQ0JwWmlBb2RtRnNkV1Z6TG14bGJtZDBhQ0E4SURFcFhHNGdJQ0FnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2lnbmRtRnNkV1Z6SUcxMWMzUWdZMjl1ZEdGcGJpQmhkQ0JzWldGemRDQnZibVVnWVhKeVlYa25LVHRjYmlBZ0lDQWdJR2xtSUNobWJrNWhiV1Z6TG14bGJtZDBhQ0FoUFQwZ2RtRnNkV1Z6TG14bGJtZDBhQ0I4ZkNCdmNIUnpMbXhsYm1kMGFDQWhQVDBnZG1Gc2RXVnpMbXhsYm1kMGFDQjhmQ0IzWldsbmFIUnpMbXhsYm1kMGFDQWhQVDBnZG1Gc2RXVnpMbXhsYm1kMGFDbGNiaUFnSUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtDZDJZV3gxWlhNc0lHWnVUbUZ0WlhNc0lIZGxhV2RvZEhNZ1lXNWtJRzl3ZEhNZ2JYVnpkQ0JvWVhabElIUm9aU0J6WVcxbElHeGxibWQwYUNjcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUc1bGR5QlFjbTl0YVhObEtHRnplVzVqSUNoeVpYTnZiSFpsTENCeVpXcGxZM1FwSUQwK0lIdGNiaUFnSUNBZ0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCc1pXNGdQU0IyWVd4MVpYTmJNRjB1YkdWdVozUm9PMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJSEJ5YjIxcGMyVnpJRDBnYm1WM0lFRnljbUY1UEZCeWIyMXBjMlU4ZG05cFpENCtLSFJvYVhNdVgzZHZjbXRsY2tOdmRXNTBLVHRjYmlBZ0lDQWdJQ0FnSUNCamIyNXpkQ0IwYjNSaGJFeGxibWQwYUNBOUlHeGxiaUFxSUNoc1pXNGdMU0F4S1NBdklESTdJQzh2SUhOcGVtVWdiMllnY21Wa2RXTmxaQ0JrYVhOMFlXNWpaU0J0WVhSeWFYaGNiaUFnSUNBZ0lDQWdJQ0IwYUdsekxsOTNiM0pyWlhKRGIzVnVkQ0E5SUUxaGRHZ3ViV2x1S0hSb2FYTXVYM2R2Y210bGNrTnZkVzUwTENCMGIzUmhiRXhsYm1kMGFDazdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdZMmgxYm10VGFYcGxJRDBnZEc5MFlXeE1aVzVuZEdnZ0x5QjBhR2x6TGw5M2IzSnJaWEpEYjNWdWREdGNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQmthWE4wWVc1alpVMWhkSEpwZUNBOUlHNWxkeUJHYkc5aGRETXlRWEp5WVhrb2RHOTBZV3hNWlc1bmRHZ3BPMXh1SUNBZ0lDQWdJQ0FnSUd4bGRDQmxibVJTYjNjZ1BTQXdPMXh1SUNBZ0lDQWdJQ0FnSUd4bGRDQmxibVJEYjJ3Z1BTQXhPMXh1SUNBZ0lDQWdJQ0FnSUM4dklHMXBibTFoZUNCbWIzSWdibTl5YldGc2FYcGhkR2x2Ymx4dUlDQWdJQ0FnSUNBZ0lHeGxkQ0JzYldsdUlEMGdNRHRjYmlBZ0lDQWdJQ0FnSUNCc1pYUWdiRzFoZUNBOUlFNTFiV0psY2k1TlNVNWZWa0ZNVlVVN1hHNGdJQ0FnSUNBZ0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0IwYUdsekxsOTNiM0pyWlhKRGIzVnVkRHNnYVNzcktTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0J6ZEdGeWRDQTlJRTFoZEdndVpteHZiM0lvYVNBcUlHTm9kVzVyVTJsNlpTazdYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JsYm1RZ1BTQW9hU0E5UFQwZ2RHaHBjeTVmZDI5eWEyVnlRMjkxYm5RZ0xTQXhLU0EvSUhSdmRHRnNUR1Z1WjNSb0lEb2dUV0YwYUM1bWJHOXZjaWdvYVNBcklERXBJQ29nWTJoMWJtdFRhWHBsS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElITjBZWEowVW05M0lEMGdaVzVrVW05M08xeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdjM1JoY25SRGIyd2dQU0JsYm1SRGIydzdYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9hU0FoUFQwZ2RHaHBjeTVmZDI5eWEyVnlRMjkxYm5RZ0xTQXhLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQzh2SUZSb1pYTmxJR1p2Y20xMWJHRnpJRzFoY0NCMGFHVWdiR2x1WldGeUlHbHVaR1Y0SUhSdklIUm9aU0IxY0hCbGNpQjBjbWxoYm1kMWJHRnlJRzFoZEhKcGVDQnBibVJwWTJWelhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUdWdVpGSnZkeUE5SUd4bGJpQXRJRElnTFNCTllYUm9MbVpzYjI5eUtFMWhkR2d1YzNGeWRDZ3RPQ0FxSUdWdVpDQXJJRFFnS2lCc1pXNGdLaUFvYkdWdUlDMGdNU2tnTFNBM0tTQXZJRElnTFNBd0xqVXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQmxibVJEYjJ3Z1BTQmxibVFnTFNCc1pXNGdLaUJsYm1SU2IzY2dLeUJOWVhSb0xtWnNiMjl5S0NobGJtUlNiM2NnS3lBeEtTQXFJQ2hsYm1SU2IzY2dLeUF5S1NBdklESXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ0lDQWdJQ0FnZEdocGN5NWZkMjl5YTJWeWMxdHBYUzV3YjNOMFRXVnpjMkZuWlNoY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnZTNaaGJIVmxjeXdnWm01T1lXMWxjeXdnYzNSaGNuUlNiM2NzSUhOMFlYSjBRMjlzTENCamFIVnVZMnRUYVhwbE9pQmxibVFnTFNCemRHRnlkQ3dnYjNCMGN5d2dkMlZwWjJoMGN5d2dZV2RuY21WbllYUnBiMjVOWlhSb2IyUjlYRzRnSUNBZ0lDQWdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnY0hKdmJXbHpaWE5iYVYwZ1BTQnVaWGNnVUhKdmJXbHpaU2dvY21WemIyeDJaVmR2Y210bGNpd2djbVZxWldOMFYyOXlhMlZ5S1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11WDNkdmNtdGxjbk5iYVYwdWIyNXRaWE56WVdkbElEMGdLSHRrWVhSaE9pQjdaWEp5YjNJc0lHUnBjM1JoYm1ObFRXRjBjbWw0UkdGMFlTd2diV2x1TENCdFlYaDlmU2s2SUhadmFXUWdQVDRnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVYM1JsY20xcGJtRjBaVTl1UTI5dGNHeGxkR1VnSmlZZ2MyVjBWR2x0Wlc5MWRDZ29LU0E5UGlCMGFHbHpMbDkzYjNKclpYSnpXMmxkTG5SbGNtMXBibUYwWlNncEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvWlhKeWIzSXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGFtVmpkRmR2Y210bGNpaGxjbkp2Y2lrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHUnBjM1JoYm1ObFRXRjBjbWw0TG5ObGRDaGthWE4wWVc1alpVMWhkSEpwZUVSaGRHRXNJSE4wWVhKMEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNodGFXNGdQQ0JzYldsdUtWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JzYldsdUlEMGdiV2x1TzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLRzFoZUNBK0lHeHRZWGdwWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHeHRZWGdnUFNCdFlYZzdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhOdmJIWmxWMjl5YTJWeUtDazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQjlPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNBZ0lHRjNZV2wwSUZCeWIyMXBjMlV1WVd4c0tIQnliMjFwYzJWektUdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2JtOXliV0ZzYVhwbEtWeHVJQ0FnSUNBZ0lDQWdJQ0FnWkdsemRHRnVZMlZOWVhSeWFYZ3VabTl5UldGamFDZ29kbUZzZFdVc0lHbHVaR1Y0S1NBOVBpQjdJR1JwYzNSaGJtTmxUV0YwY21sNFcybHVaR1Y0WFNBOUlDaDJZV3gxWlNBdElHeHRhVzRwSUM4Z0tHeHRZWGdnTFNCc2JXbHVLVHNnZlNrN1hHNGdJQ0FnSUNBZ0lDQWdjbVZ6YjJ4MlpTaGthWE4wWVc1alpVMWhkSEpwZUNrN1hHNGdJQ0FnSUNBZ0lIMGdZMkYwWTJnZ0tHVXBJSHRjYmlBZ0lDQWdJQ0FnSUNCeVpXcGxZM1FvWlNrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lIQjFZbXhwWXlCMFpYSnRhVzVoZEdVb0tUb2dkbTlwWkNCN1hHNGdJQ0FnSUNCMGFHbHpMbDkzYjNKclpYSnpMbVp2Y2tWaFkyZ29LSGR2Y210bGNpa2dQVDRnZDI5eWEyVnlMblJsY20xcGJtRjBaU2dwS1R0Y2JpQWdJQ0I5WEc1OVhHNGlYWDA9IiwiLyoqXG4gKiBAbGljZW5zZVxuICpcbiAqIENvcHlyaWdodCAyMDE5IEdvb2dsZSBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKi9cbi8qKlxuICogU2ltcGxlIHJhbmRvbSBpbnRlZ2VyIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0YXVSYW5kSW50KG4sIHJhbmRvbSkge1xuICAgIHJldHVybiBNYXRoLmZsb29yKHJhbmRvbSgpICogbik7XG59XG4vKipcbiAqIFNpbXBsZSByYW5kb20gZmxvYXQgZnVuY3Rpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhdVJhbmQocmFuZG9tKSB7XG4gICAgcmV0dXJuIHJhbmRvbSgpO1xufVxuLyoqXG4gKiBDb21wdXRlIHRoZSAoc3RhbmRhcmQgbDIpIG5vcm0gb2YgYSB2ZWN0b3IuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtKHZlYykge1xuICAgIGxldCByZXN1bHQgPSAwO1xuICAgIGZvciAoY29uc3QgaXRlbSBvZiB2ZWMpXG4gICAgICAgIHJlc3VsdCArPSBpdGVtICoqIDI7XG4gICAgcmV0dXJuIE1hdGguc3FydChyZXN1bHQpO1xufVxuLyoqXG4gKiBDcmVhdGVzIGFuIGVtcHR5IGFycmF5IChmaWxsZWQgd2l0aCB1bmRlZmluZWQpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbXB0eShuKSB7XG4gICAgY29uc3Qgb3V0cHV0ID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyBpKyspXG4gICAgICAgIG91dHB1dC5wdXNoKHVuZGVmaW5lZCk7XG4gICAgcmV0dXJuIG91dHB1dDtcbn1cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBmaWxsZWQgd2l0aCBpbmRleCB2YWx1ZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhbmdlKG4pIHtcbiAgICByZXR1cm4gZW1wdHkobikubWFwKChfLCBpKSA9PiBpKTtcbn1cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBmaWxsZWQgd2l0aCBhIHNwZWNpZmljIHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWxsZWQobiwgdikge1xuICAgIHJldHVybiBlbXB0eShuKS5tYXAoKCkgPT4gdik7XG59XG4vKipcbiAqIENyZWF0ZXMgYW4gYXJyYXkgZmlsbGVkIHdpdGggemVyb3NcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHplcm9zKG4pIHtcbiAgICByZXR1cm4gZmlsbGVkKG4sIDApO1xufVxuLyoqXG4gKiBDcmVhdGVzIGFuIGFycmF5IGZpbGxlZCB3aXRoIG9uZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG9uZXMobikge1xuICAgIHJldHVybiBmaWxsZWQobiwgMSk7XG59XG4vKipcbiAqIENyZWF0ZXMgYW4gYXJyYXkgZnJvbSBhIHRvIGIsIG9mIGxlbmd0aCBsZW4sIGluY2x1c2l2ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gbGluZWFyKGEsIGIsIGxlbikge1xuICAgIHJldHVybiBlbXB0eShsZW4pLm1hcCgoXywgaSkgPT4ge1xuICAgICAgICByZXR1cm4gYSArIGkgKiAoKGIgLSBhKSAvIChsZW4gLSAxKSk7XG4gICAgfSk7XG59XG4vKipcbiAqIFJldHVybnMgdGhlIHN1bSBvZiBhbiBhcnJheVxuICovXG5leHBvcnQgZnVuY3Rpb24gc3VtKGlucHV0KSB7XG4gICAgcmV0dXJuIGlucHV0LnJlZHVjZSgoc3VtLCB2YWwpID0+IHN1bSArIHZhbCk7XG59XG4vKipcbiAqIFJldHVybnMgdGhlIG1lYW4gb2YgYW4gYXJyYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1lYW4oaW5wdXQpIHtcbiAgICByZXR1cm4gc3VtKGlucHV0KSAvIGlucHV0Lmxlbmd0aDtcbn1cbi8qKlxuICogUmV0dXJucyB0aGUgbWF4aW11bSB2YWx1ZSBvZiBhbiBhcnJheVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWF4KGlucHV0KSB7XG4gICAgbGV0IG1heCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dC5sZW5ndGg7IGkrKylcbiAgICAgICAgbWF4ID0gaW5wdXRbaV0gPiBtYXggPyBpbnB1dFtpXSA6IG1heDtcbiAgICByZXR1cm4gbWF4O1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBtYXhpbXVtIHZhbHVlIG9mIGEgMmQgYXJyYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1heDJkKGlucHV0KSB7XG4gICAgbGV0IG1heCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnB1dC5sZW5ndGg7IGkrKykge1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGlucHV0W2ldLmxlbmd0aDsgaisrKVxuICAgICAgICAgICAgbWF4ID0gaW5wdXRbaV1bal0gPiBtYXggPyBpbnB1dFtpXVtqXSA6IG1heDtcbiAgICB9XG4gICAgcmV0dXJuIG1heDtcbn1cbi8qKlxuICogR2VuZXJhdGUgblNhbXBsZXMgbWFueSBpbnRlZ2VycyBmcm9tIDAgdG8gcG9vbFNpemUgc3VjaCB0aGF0IG5vXG4gKiBpbnRlZ2VyIGlzIHNlbGVjdGVkIHR3aWNlLiBUaGUgZHVwbGljYXRpb24gY29uc3RyYWludCBpcyBhY2hpZXZlZCB2aWFcbiAqIHJlamVjdGlvbiBzYW1wbGluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlamVjdGlvblNhbXBsZShuU2FtcGxlcywgcG9vbFNpemUsIHJhbmRvbSkge1xuICAgIGNvbnN0IHJlc3VsdCA9IHplcm9zKG5TYW1wbGVzKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5TYW1wbGVzOyBpKyspIHtcbiAgICAgICAgbGV0IHJlamVjdFNhbXBsZSA9IHRydWU7XG4gICAgICAgIHdoaWxlIChyZWplY3RTYW1wbGUpIHtcbiAgICAgICAgICAgIGNvbnN0IGogPSB0YXVSYW5kSW50KHBvb2xTaXplLCByYW5kb20pO1xuICAgICAgICAgICAgbGV0IGJyb2tlbiA9IGZhbHNlO1xuICAgICAgICAgICAgZm9yIChsZXQgayA9IDA7IGsgPCBpOyBrKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoaiA9PT0gcmVzdWx0W2tdKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyb2tlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghYnJva2VuKVxuICAgICAgICAgICAgICAgIHJlamVjdFNhbXBsZSA9IGZhbHNlO1xuICAgICAgICAgICAgcmVzdWx0W2ldID0gajtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuLyoqXG4gKiBSZXNoYXBlcyBhIDFkIGFycmF5IGludG8gYSAyRCBvZiBnaXZlbiBkaW1lbnNpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzaGFwZTJkKHgsIGEsIGIpIHtcbiAgICBjb25zdCByb3dzID0gW107XG4gICAgLy8gbGV0IGNvdW50ID0gMDtcbiAgICBsZXQgaW5kZXggPSAwO1xuICAgIGlmICh4Lmxlbmd0aCAhPT0gYSAqIGIpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignQXJyYXkgZGltZW5zaW9ucyBtdXN0IG1hdGNoIGlucHV0IGxlbmd0aC4nKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGE7IGkrKykge1xuICAgICAgICBjb25zdCBjb2wgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBiOyBqKyspIHtcbiAgICAgICAgICAgIGNvbC5wdXNoKHhbaW5kZXhdKTtcbiAgICAgICAgICAgIGluZGV4ICs9IDE7XG4gICAgICAgIH1cbiAgICAgICAgcm93cy5wdXNoKGNvbCk7XG4gICAgICAgIC8vIGNvdW50ICs9IDE7XG4gICAgfVxuICAgIHJldHVybiByb3dzO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pZFhScGJITXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMWRHbHNjeTUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFUczdPenM3T3pzN096czdPenM3T3pzN1IwRnBRa2M3UVVGSlNEczdSMEZGUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hWUVVGVkxFTkJRVU1zUTBGQlV5eEZRVUZGTEUxQlFXZENPMGxCUTNCRUxFOUJRVThzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU5zUXl4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNUMEZCVHl4RFFVRkRMRTFCUVdkQ08wbEJRM1JETEU5QlFVOHNUVUZCVFN4RlFVRkZMRU5CUVVNN1FVRkRiRUlzUTBGQlF6dEJRVU5FT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxFbEJRVWtzUTBGQlF5eEhRVUZoTzBsQlEyaERMRWxCUVVrc1RVRkJUU3hIUVVGSExFTkJRVU1zUTBGQlF6dEpRVU5tTEV0QlFVc3NUVUZCVFN4SlFVRkpMRWxCUVVrc1IwRkJSenRSUVVOd1FpeE5RVUZOTEVsQlFVa3NTVUZCU1N4SlFVRkpMRU5CUVVNc1EwRkJRenRKUVVWMFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03UVVGRE0wSXNRMEZCUXp0QlFVVkVPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEV0QlFVc3NRMEZCUXl4RFFVRlRPMGxCUXpkQ0xFMUJRVTBzVFVGQlRTeEhRVUZuUWl4RlFVRkZMRU5CUVVNN1NVRkRMMElzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVTdVVUZEZUVJc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNRMEZCUXp0SlFVVjZRaXhQUVVGUExFMUJRVTBzUTBGQlF6dEJRVU5vUWl4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNTMEZCU3l4RFFVRkRMRU5CUVZNN1NVRkROMElzVDBGQlR5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRGJrTXNRMEZCUXp0QlFVVkVPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEUxQlFVMHNRMEZCUXl4RFFVRlRMRVZCUVVVc1EwRkJVenRKUVVONlF5eFBRVUZQTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRMMElzUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxFdEJRVXNzUTBGQlF5eERRVUZUTzBsQlF6ZENMRTlCUVU4c1RVRkJUU3hEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjBRaXhEUVVGRE8wRkJSVVE3TzBkQlJVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1NVRkJTU3hEUVVGRExFTkJRVk03U1VGRE5VSXNUMEZCVHl4TlFVRk5MRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEzUkNMRU5CUVVNN1FVRkZSRHM3UjBGRlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4TlFVRk5MRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk1zUlVGQlJTeEhRVUZYTzBsQlEzUkVMRTlCUVU4c1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFJRVU0zUWl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTNaRExFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEwd3NRMEZCUXp0QlFVVkVPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEVkQlFVY3NRMEZCUXl4TFFVRmxPMGxCUTJwRExFOUJRVThzUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRWRCUVVjc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJTeERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRU5CUVVNc1EwRkJRenRCUVVNdlF5eERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzU1VGQlNTeERRVUZETEV0QlFXVTdTVUZEYkVNc1QwRkJUeXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJRenRCUVVOdVF5eERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzUjBGQlJ5eERRVUZETEV0QlFXVTdTVUZEYWtNc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlExb3NTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRk8xRkJRMjVETEVkQlFVY3NSMEZCUnl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXp0SlFVVjRReXhQUVVGUExFZEJRVWNzUTBGQlF6dEJRVU5pTEVOQlFVTTdRVUZGUkRzN1IwRkZSenRCUVVOSUxFMUJRVTBzVlVGQlZTeExRVUZMTEVOQlFVTXNTMEZCYVVJN1NVRkRja01zU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTFvc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRXRCUVVzc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdVVUZEY2tNc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMWxCUTNSRExFZEJRVWNzUjBGQlJ5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJRenRMUVVNdlF6dEpRVU5FTEU5QlFVOHNSMEZCUnl4RFFVRkRPMEZCUTJJc1EwRkJRenRCUVVWRU96czdPMGRCU1VjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzWlVGQlpTeERRVU0zUWl4UlFVRm5RaXhGUVVOb1FpeFJRVUZuUWl4RlFVTm9RaXhOUVVGblFqdEpRVVZvUWl4TlFVRk5MRTFCUVUwc1IwRkJSeXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTTdTVUZETDBJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRkZCUVZFc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFJRVU5xUXl4SlFVRkpMRmxCUVZrc1IwRkJSeXhKUVVGSkxFTkJRVU03VVVGRGVFSXNUMEZCVHl4WlFVRlpMRVZCUVVVN1dVRkRia0lzVFVGQlRTeERRVUZETEVkQlFVY3NWVUZCVlN4RFFVRkRMRkZCUVZFc1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF6dFpRVU4yUXl4SlFVRkpMRTFCUVUwc1IwRkJSeXhMUVVGTExFTkJRVU03V1VGRGJrSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRuUWtGRE1VSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTzI5Q1FVTnVRaXhOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETzI5Q1FVTmtMRTFCUVUwN2FVSkJRMUE3WVVGRFJqdFpRVU5FTEVsQlFVa3NRMEZCUXl4TlFVRk5PMmRDUVVOVUxGbEJRVmtzUjBGQlJ5eExRVUZMTEVOQlFVTTdXVUZGZGtJc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0VFFVTm1PMHRCUTBZN1NVRkRSQ3hQUVVGUExFMUJRVTBzUTBGQlF6dEJRVU5vUWl4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNVMEZCVXl4RFFVRkpMRU5CUVUwc1JVRkJSU3hEUVVGVExFVkJRVVVzUTBGQlV6dEpRVU4yUkN4TlFVRk5MRWxCUVVrc1IwRkJWU3hGUVVGRkxFTkJRVU03U1VGRGRrSXNhVUpCUVdsQ08wbEJRMnBDTEVsQlFVa3NTMEZCU3l4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVWa0xFbEJRVWtzUTBGQlF5eERRVUZETEUxQlFVMHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJRenRSUVVOd1FpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMREpEUVVFeVF5eERRVUZETEVOQlFVTTdTVUZITDBRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFJRVU14UWl4TlFVRk5MRWRCUVVjc1IwRkJVU3hGUVVGRkxFTkJRVU03VVVGRGNFSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVNeFFpeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEyNUNMRXRCUVVzc1NVRkJTU3hEUVVGRExFTkJRVU03VTBGRFdqdFJRVU5FTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRFppeGpRVUZqTzB0QlEyWTdTVUZEUkN4UFFVRlBMRWxCUVVrc1EwRkJRenRCUVVOa0xFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lJdktpcGNiaUFxSUVCc2FXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSURJd01Ua2dSMjl2WjJ4bElFeE1ReTRnUVd4c0lGSnBaMmgwY3lCU1pYTmxjblpsWkM1Y2JpQXFYRzRnS2lCTWFXTmxibk5sWkNCMWJtUmxjaUIwYUdVZ1FYQmhZMmhsSUV4cFkyVnVjMlVzSUZabGNuTnBiMjRnTWk0d0lDaDBhR1VnWENKTWFXTmxibk5sWENJcE8xeHVJQ29nZVc5MUlHMWhlU0J1YjNRZ2RYTmxJSFJvYVhNZ1ptbHNaU0JsZUdObGNIUWdhVzRnWTI5dGNHeHBZVzVqWlNCM2FYUm9JSFJvWlNCTWFXTmxibk5sTGx4dUlDb2dXVzkxSUcxaGVTQnZZblJoYVc0Z1lTQmpiM0I1SUc5bUlIUm9aU0JNYVdObGJuTmxJR0YwWEc0Z0tseHVJQ29nSUNBZ0lHaDBkSEE2THk5M2QzY3VZWEJoWTJobExtOXlaeTlzYVdObGJuTmxjeTlNU1VORlRsTkZMVEl1TUZ4dUlDcGNiaUFxSUZWdWJHVnpjeUJ5WlhGMWFYSmxaQ0JpZVNCaGNIQnNhV05oWW14bElHeGhkeUJ2Y2lCaFozSmxaV1FnZEc4Z2FXNGdkM0pwZEdsdVp5d2djMjltZEhkaGNtVmNiaUFxSUdScGMzUnlhV0oxZEdWa0lIVnVaR1Z5SUhSb1pTQk1hV05sYm5ObElHbHpJR1JwYzNSeWFXSjFkR1ZrSUc5dUlHRnVJRndpUVZNZ1NWTmNJaUJDUVZOSlV5eGNiaUFxSUZkSlZFaFBWVlFnVjBGU1VrRk9WRWxGVXlCUFVpQkRUMDVFU1ZSSlQwNVRJRTlHSUVGT1dTQkxTVTVFTENCbGFYUm9aWElnWlhod2NtVnpjeUJ2Y2lCcGJYQnNhV1ZrTGx4dUlDb2dVMlZsSUhSb1pTQk1hV05sYm5ObElHWnZjaUIwYUdVZ2MzQmxZMmxtYVdNZ2JHRnVaM1ZoWjJVZ1oyOTJaWEp1YVc1bklIQmxjbTFwYzNOcGIyNXpJR0Z1WkZ4dUlDb2diR2x0YVhSaGRHbHZibk1nZFc1a1pYSWdkR2hsSUV4cFkyVnVjMlV1WEc0Z0tpQTlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQxY2JpQXFMMXh1WEc1cGJYQnZjblFnZTFKaGJtUnZiVVp1ZlNCbWNtOXRJQ2N1TDNWdFlYQW5PMXh1WEc0dktpcGNiaUFxSUZOcGJYQnNaU0J5WVc1a2IyMGdhVzUwWldkbGNpQm1kVzVqZEdsdmJseHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnZEdGMVVtRnVaRWx1ZENodU9pQnVkVzFpWlhJc0lISmhibVJ2YlRvZ1VtRnVaRzl0Um00cElIdGNiaUFnY21WMGRYSnVJRTFoZEdndVpteHZiM0lvY21GdVpHOXRLQ2tnS2lCdUtUdGNibjFjYmx4dUx5b3FYRzRnS2lCVGFXMXdiR1VnY21GdVpHOXRJR1pzYjJGMElHWjFibU4wYVc5dVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIwWVhWU1lXNWtLSEpoYm1SdmJUb2dVbUZ1Wkc5dFJtNHBJSHRjYmlBZ2NtVjBkWEp1SUhKaGJtUnZiU2dwTzF4dWZWeHVMeW9xWEc0Z0tpQkRiMjF3ZFhSbElIUm9aU0FvYzNSaGJtUmhjbVFnYkRJcElHNXZjbTBnYjJZZ1lTQjJaV04wYjNJdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ1YjNKdEtIWmxZem9nYm5WdFltVnlXMTBwSUh0Y2JpQWdiR1YwSUhKbGMzVnNkQ0E5SURBN1hHNGdJR1p2Y2lBb1kyOXVjM1FnYVhSbGJTQnZaaUIyWldNcFhHNGdJQ0FnY21WemRXeDBJQ3M5SUdsMFpXMGdLaW9nTWp0Y2JseHVJQ0J5WlhSMWNtNGdUV0YwYUM1emNYSjBLSEpsYzNWc2RDazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsY3lCaGJpQmxiWEIwZVNCaGNuSmhlU0FvWm1sc2JHVmtJSGRwZEdnZ2RXNWtaV1pwYm1Wa0tWeHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWlcxd2RIa29iam9nYm5WdFltVnlLVG9nZFc1a1pXWnBibVZrVzEwZ2UxeHVJQ0JqYjI1emRDQnZkWFJ3ZFhRNklIVnVaR1ZtYVc1bFpGdGRJRDBnVzEwN1hHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnYmpzZ2FTc3JLVnh1SUNBZ0lHOTFkSEIxZEM1d2RYTm9LSFZ1WkdWbWFXNWxaQ2s3WEc1Y2JpQWdjbVYwZFhKdUlHOTFkSEIxZER0Y2JuMWNibHh1THlvcVhHNGdLaUJEY21WaGRHVnpJR0Z1SUdGeWNtRjVJR1pwYkd4bFpDQjNhWFJvSUdsdVpHVjRJSFpoYkhWbGMxeHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnY21GdVoyVW9iam9nYm5WdFltVnlLVG9nYm5WdFltVnlXMTBnZTF4dUlDQnlaWFIxY200Z1pXMXdkSGtvYmlrdWJXRndLQ2hmTENCcEtTQTlQaUJwS1R0Y2JuMWNibHh1THlvcVhHNGdLaUJEY21WaGRHVnpJR0Z1SUdGeWNtRjVJR1pwYkd4bFpDQjNhWFJvSUdFZ2MzQmxZMmxtYVdNZ2RtRnNkV1ZjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHWnBiR3hsWkNodU9pQnVkVzFpWlhJc0lIWTZJRzUxYldKbGNpazZJRzUxYldKbGNsdGRJSHRjYmlBZ2NtVjBkWEp1SUdWdGNIUjVLRzRwTG0xaGNDZ29LU0E5UGlCMktUdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUdGdUlHRnljbUY1SUdacGJHeGxaQ0IzYVhSb0lIcGxjbTl6WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQjZaWEp2Y3lodU9pQnVkVzFpWlhJcE9pQnVkVzFpWlhKYlhTQjdYRzRnSUhKbGRIVnliaUJtYVd4c1pXUW9iaXdnTUNrN1hHNTlYRzVjYmk4cUtseHVJQ29nUTNKbFlYUmxjeUJoYmlCaGNuSmhlU0JtYVd4c1pXUWdkMmwwYUNCdmJtVnpYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdmJtVnpLRzQ2SUc1MWJXSmxjaWs2SUc1MWJXSmxjbHRkSUh0Y2JpQWdjbVYwZFhKdUlHWnBiR3hsWkNodUxDQXhLVHRjYm4xY2JseHVMeW9xWEc0Z0tpQkRjbVZoZEdWeklHRnVJR0Z5Y21GNUlHWnliMjBnWVNCMGJ5QmlMQ0J2WmlCc1pXNW5kR2dnYkdWdUxDQnBibU5zZFhOcGRtVmNiaUFxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUd4cGJtVmhjaWhoT2lCdWRXMWlaWElzSUdJNklHNTFiV0psY2l3Z2JHVnVPaUJ1ZFcxaVpYSXBPaUJ1ZFcxaVpYSmJYU0I3WEc0Z0lISmxkSFZ5YmlCbGJYQjBlU2hzWlc0cExtMWhjQ2dvWHl3Z2FTa2dQVDRnZTF4dUlDQWdJSEpsZEhWeWJpQmhJQ3NnYVNBcUlDZ29ZaUF0SUdFcElDOGdLR3hsYmlBdElERXBLVHRjYmlBZ2ZTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1VtVjBkWEp1Y3lCMGFHVWdjM1Z0SUc5bUlHRnVJR0Z5Y21GNVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ6ZFcwb2FXNXdkWFE2SUc1MWJXSmxjbHRkS1RvZ2JuVnRZbVZ5SUh0Y2JpQWdjbVYwZFhKdUlHbHVjSFYwTG5KbFpIVmpaU2dvYzNWdExDQjJZV3dwSUQwK0lITjFiU0FySUhaaGJDazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1VtVjBkWEp1Y3lCMGFHVWdiV1ZoYmlCdlppQmhiaUJoY25KaGVWeHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYldWaGJpaHBibkIxZERvZ2JuVnRZbVZ5VzEwcE9pQnVkVzFpWlhJZ2UxeHVJQ0J5WlhSMWNtNGdjM1Z0S0dsdWNIVjBLU0F2SUdsdWNIVjBMbXhsYm1kMGFEdGNibjFjYmx4dUx5b3FYRzRnS2lCU1pYUjFjbTV6SUhSb1pTQnRZWGhwYlhWdElIWmhiSFZsSUc5bUlHRnVJR0Z5Y21GNVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ0WVhnb2FXNXdkWFE2SUc1MWJXSmxjbHRkS1RvZ2JuVnRZbVZ5SUh0Y2JpQWdiR1YwSUcxaGVDQTlJREE3WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dhVzV3ZFhRdWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ2JXRjRJRDBnYVc1d2RYUmJhVjBnUGlCdFlYZ2dQeUJwYm5CMWRGdHBYU0E2SUcxaGVEdGNibHh1SUNCeVpYUjFjbTRnYldGNE8xeHVmVnh1WEc0dktpcGNiaUFxSUZKbGRIVnlibk1nZEdobElHMWhlR2x0ZFcwZ2RtRnNkV1VnYjJZZ1lTQXlaQ0JoY25KaGVWeHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYldGNE1tUW9hVzV3ZFhRNklHNTFiV0psY2x0ZFcxMHBPaUJ1ZFcxaVpYSWdlMXh1SUNCc1pYUWdiV0Y0SUQwZ01EdGNiaUFnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCcGJuQjFkQzVzWlc1bmRHZzdJR2tyS3lrZ2UxeHVJQ0FnSUdadmNpQW9iR1YwSUdvZ1BTQXdPeUJxSUR3Z2FXNXdkWFJiYVYwdWJHVnVaM1JvT3lCcUt5c3BYRzRnSUNBZ0lDQnRZWGdnUFNCcGJuQjFkRnRwWFZ0cVhTQStJRzFoZUNBL0lHbHVjSFYwVzJsZFcycGRJRG9nYldGNE8xeHVJQ0I5WEc0Z0lISmxkSFZ5YmlCdFlYZzdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1IyVnVaWEpoZEdVZ2JsTmhiWEJzWlhNZ2JXRnVlU0JwYm5SbFoyVnljeUJtY205dElEQWdkRzhnY0c5dmJGTnBlbVVnYzNWamFDQjBhR0YwSUc1dlhHNGdLaUJwYm5SbFoyVnlJR2x6SUhObGJHVmpkR1ZrSUhSM2FXTmxMaUJVYUdVZ1pIVndiR2xqWVhScGIyNGdZMjl1YzNSeVlXbHVkQ0JwY3lCaFkyaHBaWFpsWkNCMmFXRmNiaUFxSUhKbGFtVmpkR2x2YmlCellXMXdiR2x1Wnk1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSEpsYW1WamRHbHZibE5oYlhCc1pTaGNiaUFnYmxOaGJYQnNaWE02SUc1MWJXSmxjaXhjYmlBZ2NHOXZiRk5wZW1VNklHNTFiV0psY2l4Y2JpQWdjbUZ1Wkc5dE9pQlNZVzVrYjIxR2JseHVLVG9nYm5WdFltVnlXMTBnZTF4dUlDQmpiMjV6ZENCeVpYTjFiSFFnUFNCNlpYSnZjeWh1VTJGdGNHeGxjeWs3WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dibE5oYlhCc1pYTTdJR2tyS3lrZ2UxeHVJQ0FnSUd4bGRDQnlaV3BsWTNSVFlXMXdiR1VnUFNCMGNuVmxPMXh1SUNBZ0lIZG9hV3hsSUNoeVpXcGxZM1JUWVcxd2JHVXBJSHRjYmlBZ0lDQWdJR052Ym5OMElHb2dQU0IwWVhWU1lXNWtTVzUwS0hCdmIyeFRhWHBsTENCeVlXNWtiMjBwTzF4dUlDQWdJQ0FnYkdWMElHSnliMnRsYmlBOUlHWmhiSE5sTzF4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYXlBOUlEQTdJR3NnUENCcE95QnJLeXNwSUh0Y2JpQWdJQ0FnSUNBZ2FXWWdLR29nUFQwOUlISmxjM1ZzZEZ0clhTa2dlMXh1SUNBZ0lDQWdJQ0FnSUdKeWIydGxiaUE5SUhSeWRXVTdYRzRnSUNBZ0lDQWdJQ0FnWW5KbFlXczdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDFjYmlBZ0lDQWdJR2xtSUNnaFluSnZhMlZ1S1Z4dUlDQWdJQ0FnSUNCeVpXcGxZM1JUWVcxd2JHVWdQU0JtWVd4elpUdGNibHh1SUNBZ0lDQWdjbVZ6ZFd4MFcybGRJRDBnYWp0Y2JpQWdJQ0I5WEc0Z0lIMWNiaUFnY21WMGRYSnVJSEpsYzNWc2REdGNibjFjYmx4dUx5b3FYRzRnS2lCU1pYTm9ZWEJsY3lCaElERmtJR0Z5Y21GNUlHbHVkRzhnWVNBeVJDQnZaaUJuYVhabGJpQmthVzFsYm5OcGIyNXpMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2NtVnphR0Z3WlRKa1BGUStLSGc2SUZSYlhTd2dZVG9nYm5WdFltVnlMQ0JpT2lCdWRXMWlaWElwT2lCVVcxMWJYU0I3WEc0Z0lHTnZibk4wSUhKdmQzTTZJRlJiWFZ0ZElEMGdXMTA3WEc0Z0lDOHZJR3hsZENCamIzVnVkQ0E5SURBN1hHNGdJR3hsZENCcGJtUmxlQ0E5SURBN1hHNWNiaUFnYVdZZ0tIZ3ViR1Z1WjNSb0lDRTlQU0JoSUNvZ1lpbGNiaUFnSUNCMGFISnZkeUJ1WlhjZ1JYSnliM0lvSjBGeWNtRjVJR1JwYldWdWMybHZibk1nYlhWemRDQnRZWFJqYUNCcGJuQjFkQ0JzWlc1bmRHZ3VKeWs3WEc1Y2JseHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdFN0lHa3JLeWtnZTF4dUlDQWdJR052Ym5OMElHTnZiRG9nVkZ0ZElEMGdXMTA3WEc0Z0lDQWdabTl5SUNoc1pYUWdhaUE5SURBN0lHb2dQQ0JpT3lCcUt5c3BJSHRjYmlBZ0lDQWdJR052YkM1d2RYTm9LSGhiYVc1a1pYaGRLVHRjYmlBZ0lDQWdJR2x1WkdWNElDczlJREU3WEc0Z0lDQWdmVnh1SUNBZ0lISnZkM011Y0hWemFDaGpiMndwTzF4dUlDQWdJQzh2SUdOdmRXNTBJQ3M5SURFN1hHNGdJSDFjYmlBZ2NtVjBkWEp1SUhKdmQzTTdYRzU5WEc0aVhYMD0iLCIvKipcbiAqIEBsaWNlbnNlXG4gKlxuICogQ29weXJpZ2h0IDIwMTkgR29vZ2xlIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqL1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscyc7XG4vKipcbiAqICBDb25zdHJ1Y3RvciBmb3IgdGhlIGhlYXAgb2JqZWN0cy4gVGhlIGhlYXBzIGFyZSB1c2VkXG4gKiBmb3IgYXBwcm94aW1hdGUgbmVhcmVzdCBuZWlnaGJvciBzZWFyY2gsIG1haW50YWluaW5nIGEgbGlzdCBvZiBwb3RlbnRpYWxcbiAqIG5laWdoYm9ycyBzb3J0ZWQgYnkgdGhlaXIgZGlzdGFuY2UuIFdlIGFsc28gZmxhZyBpZiBwb3RlbnRpYWwgbmVpZ2hib3JzXG4gKiBhcmUgbmV3bHkgYWRkZWQgdG8gdGhlIGxpc3Qgb3Igbm90LiBJbnRlcm5hbGx5IHRoaXMgaXMgc3RvcmVkIGFzXG4gKiBhIHNpbmdsZSBhcnJheTsgdGhlIGZpcnN0IGF4aXMgZGV0ZXJtaW5lcyB3aGV0aGVyIHdlIGFyZSBsb29raW5nIGF0IHRoZVxuICogYXJyYXkgb2YgY2FuZGlkYXRlIGluZGljZXMsIHRoZSBhcnJheSBvZiBkaXN0YW5jZXMsIG9yIHRoZSBmbGFnIGFycmF5IGZvclxuICogd2hldGhlciBlbGVtZW50cyBhcmUgbmV3IG9yIG5vdC4gRWFjaCBvZiB0aGVzZSBhcnJheXMgYXJlIG9mIHNoYXBlXG4gKiAoYGBuUG9pbnRzYGAsIGBgc2l6ZWBgKVxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZUhlYXAoblBvaW50cywgc2l6ZSkge1xuICAgIGNvbnN0IG1ha2VBcnJheXMgPSAoZmlsbFZhbHVlKSA9PiB7XG4gICAgICAgIHJldHVybiB1dGlscy5lbXB0eShuUG9pbnRzKS5tYXAoKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHV0aWxzLmZpbGxlZChzaXplLCBmaWxsVmFsdWUpO1xuICAgICAgICB9KTtcbiAgICB9O1xuICAgIGNvbnN0IGhlYXAgPSBbXTtcbiAgICBoZWFwLnB1c2gobWFrZUFycmF5cygtMSkpO1xuICAgIGhlYXAucHVzaChtYWtlQXJyYXlzKEluZmluaXR5KSk7XG4gICAgaGVhcC5wdXNoKG1ha2VBcnJheXMoMCkpO1xuICAgIHJldHVybiBoZWFwO1xufVxuLyoqXG4gKiBHZW5lcmF0ZSBuX3NhbXBsZXMgbWFueSBpbnRlZ2VycyBmcm9tIDAgdG8gcG9vbF9zaXplIHN1Y2ggdGhhdCBub1xuICogaW50ZWdlciBpcyBzZWxlY3RlZCB0d2ljZS4gVGhlIGR1cGxpY2F0aW9uIGNvbnN0cmFpbnQgaXMgYWNoaWV2ZWQgdmlhXG4gKiByZWplY3Rpb24gc2FtcGxpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWplY3Rpb25TYW1wbGUoblNhbXBsZXMsIHBvb2xTaXplLCByYW5kb20pIHtcbiAgICBjb25zdCByZXN1bHQgPSB1dGlscy56ZXJvcyhuU2FtcGxlcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuU2FtcGxlczsgaSsrKSB7XG4gICAgICAgIGxldCByZWplY3RTYW1wbGUgPSB0cnVlO1xuICAgICAgICBsZXQgaiA9IDA7XG4gICAgICAgIHdoaWxlIChyZWplY3RTYW1wbGUpIHtcbiAgICAgICAgICAgIGogPSB1dGlscy50YXVSYW5kSW50KHBvb2xTaXplLCByYW5kb20pO1xuICAgICAgICAgICAgbGV0IGJyb2tlbiA9IGZhbHNlO1xuICAgICAgICAgICAgZm9yIChsZXQgayA9IDA7IGsgPCBpOyBrKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoaiA9PT0gcmVzdWx0W2tdKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyb2tlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghYnJva2VuKVxuICAgICAgICAgICAgICAgIHJlamVjdFNhbXBsZSA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdFtpXSA9IGo7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG4vKipcbiAqIFB1c2ggYSBuZXcgZWxlbWVudCBvbnRvIHRoZSBoZWFwLiBUaGUgaGVhcCBzdG9yZXMgcG90ZW50aWFsIG5laWdoYm9yc1xuICogZm9yIGVhY2ggZGF0YSBwb2ludC4gVGhlIGBgcm93YGAgcGFyYW1ldGVyIGRldGVybWluZXMgd2hpY2ggZGF0YSBwb2ludCB3ZVxuICogYXJlIGFkZHJlc3NpbmcsIHRoZSBgYHdlaWdodGBgIGRldGVybWluZXMgdGhlIGRpc3RhbmNlIChmb3IgaGVhcCBzb3J0aW5nKSxcbiAqIHRoZSBgYGluZGV4YGAgaXMgdGhlIGVsZW1lbnQgdG8gYWRkLCBhbmQgdGhlIGZsYWcgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXNcbiAqIGlzIHRvIGJlIGNvbnNpZGVyZWQgYSBuZXcgYWRkaXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoZWFwUHVzaChoZWFwLCByb3csIHdlaWdodCwgaW5kZXgsIGZsYWcpIHtcbiAgICByb3cgPSBNYXRoLmZsb29yKHJvdyk7XG4gICAgY29uc3QgaW5kaWNlcyA9IGhlYXBbMF1bcm93XTtcbiAgICBjb25zdCB3ZWlnaHRzID0gaGVhcFsxXVtyb3ddO1xuICAgIC8vY29uc3QgaXNOZXcgPSBoZWFwWzJdW3Jvd107XG4gICAgaWYgKHdlaWdodCA+PSB3ZWlnaHRzWzBdKVxuICAgICAgICByZXR1cm4gMDtcbiAgICAvLyBCcmVhayBpZiB3ZSBhbHJlYWR5IGhhdmUgdGhpcyBlbGVtZW50LlxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5kaWNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoaW5kZXggPT09IGluZGljZXNbaV0pXG4gICAgICAgICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIHVuY2hlY2tlZEhlYXBQdXNoKGhlYXAsIHJvdywgd2VpZ2h0LCBpbmRleCwgZmxhZyk7XG59XG4vKipcbiAqIFB1c2ggYSBuZXcgZWxlbWVudCBvbnRvIHRoZSBoZWFwLiBUaGUgaGVhcCBzdG9yZXMgcG90ZW50aWFsIG5laWdoYm9yc1xuICogZm9yIGVhY2ggZGF0YSBwb2ludC4gVGhlIGBgcm93YGAgcGFyYW1ldGVyIGRldGVybWluZXMgd2hpY2ggZGF0YSBwb2ludCB3ZVxuICogYXJlIGFkZHJlc3NpbmcsIHRoZSBgYHdlaWdodGBgIGRldGVybWluZXMgdGhlIGRpc3RhbmNlIChmb3IgaGVhcCBzb3J0aW5nKSxcbiAqIHRoZSBgYGluZGV4YGAgaXMgdGhlIGVsZW1lbnQgdG8gYWRkLCBhbmQgdGhlIGZsYWcgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoaXNcbiAqIGlzIHRvIGJlIGNvbnNpZGVyZWQgYSBuZXcgYWRkaXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bmNoZWNrZWRIZWFwUHVzaChoZWFwLCByb3csIHdlaWdodCwgaW5kZXgsIGZsYWcpIHtcbiAgICBjb25zdCBpbmRpY2VzID0gaGVhcFswXVtyb3ddO1xuICAgIGNvbnN0IHdlaWdodHMgPSBoZWFwWzFdW3Jvd107XG4gICAgY29uc3QgaXNOZXcgPSBoZWFwWzJdW3Jvd107XG4gICAgaWYgKHdlaWdodCA+PSB3ZWlnaHRzWzBdKVxuICAgICAgICByZXR1cm4gMDtcbiAgICAvLyBJbnNlcnQgdmFsIGF0IHBvc2l0aW9uIHplcm9cbiAgICB3ZWlnaHRzWzBdID0gd2VpZ2h0O1xuICAgIGluZGljZXNbMF0gPSBpbmRleDtcbiAgICBpc05ld1swXSA9IGZsYWc7XG4gICAgLy8gRGVzY2VuZCB0aGUgaGVhcCwgc3dhcHBpbmcgdmFsdWVzIHVudGlsIHRoZSBtYXggaGVhcCBjcml0ZXJpb24gaXMgbWV0XG4gICAgbGV0IGkgPSAwO1xuICAgIGxldCBpU3dhcCA9IDA7XG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgY29uc3QgaWMxID0gMiAqIGkgKyAxO1xuICAgICAgICBjb25zdCBpYzIgPSBpYzEgKyAxO1xuICAgICAgICBjb25zdCBoZWFwU2hhcGUyID0gaGVhcFswXVswXS5sZW5ndGg7XG4gICAgICAgIGlmIChpYzEgPj0gaGVhcFNoYXBlMikge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaWMyID49IGhlYXBTaGFwZTIpIHtcbiAgICAgICAgICAgIGlmICh3ZWlnaHRzW2ljMV0gPiB3ZWlnaHQpXG4gICAgICAgICAgICAgICAgaVN3YXAgPSBpYzE7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAod2VpZ2h0c1tpYzFdID49IHdlaWdodHNbaWMyXSkge1xuICAgICAgICAgICAgaWYgKHdlaWdodCA8IHdlaWdodHNbaWMxXSlcbiAgICAgICAgICAgICAgICBpU3dhcCA9IGljMTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGlmICh3ZWlnaHQgPCB3ZWlnaHRzW2ljMl0pXG4gICAgICAgICAgICAgICAgaVN3YXAgPSBpYzI7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgd2VpZ2h0c1tpXSA9IHdlaWdodHNbaVN3YXBdO1xuICAgICAgICBpbmRpY2VzW2ldID0gaW5kaWNlc1tpU3dhcF07XG4gICAgICAgIGlzTmV3W2ldID0gaXNOZXdbaVN3YXBdO1xuICAgICAgICBpID0gaVN3YXA7XG4gICAgfVxuICAgIHdlaWdodHNbaV0gPSB3ZWlnaHQ7XG4gICAgaW5kaWNlc1tpXSA9IGluZGV4O1xuICAgIGlzTmV3W2ldID0gZmxhZztcbiAgICByZXR1cm4gMTtcbn1cbi8qKlxuICogQnVpbGQgYSBoZWFwIG9mIGNhbmRpZGF0ZSBuZWlnaGJvcnMgZm9yIG5lYXJlc3QgbmVpZ2hib3IgZGVzY2VudC4gRm9yXG4gKiBlYWNoIHZlcnRleCB0aGUgY2FuZGlkYXRlIG5laWdoYm9ycyBhcmUgYW55IGN1cnJlbnQgbmVpZ2hib3JzLCBhbmQgYW55XG4gKiB2ZXJ0aWNlcyB0aGF0IGhhdmUgdGhlIHZlcnRleCBhcyBvbmUgb2YgdGhlaXIgbmVhcmVzdCBuZWlnaGJvcnMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZENhbmRpZGF0ZXMoY3VycmVudEdyYXBoLCBuVmVydGljZXMsIG5OZWlnaGJvcnMsIG1heENhbmRpZGF0ZXMsIHJhbmRvbSkge1xuICAgIGNvbnN0IGNhbmRpZGF0ZU5laWdoYm9ycyA9IG1ha2VIZWFwKG5WZXJ0aWNlcywgbWF4Q2FuZGlkYXRlcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuVmVydGljZXM7IGkrKykge1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IG5OZWlnaGJvcnM7IGorKykge1xuICAgICAgICAgICAgaWYgKGN1cnJlbnRHcmFwaFswXVtpXVtqXSA8IDApXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICBjb25zdCBpZHggPSBjdXJyZW50R3JhcGhbMF1baV1bal07XG4gICAgICAgICAgICBjb25zdCBpc24gPSBjdXJyZW50R3JhcGhbMl1baV1bal07XG4gICAgICAgICAgICBjb25zdCBkID0gdXRpbHMudGF1UmFuZChyYW5kb20pO1xuICAgICAgICAgICAgaGVhcFB1c2goY2FuZGlkYXRlTmVpZ2hib3JzLCBpLCBkLCBpZHgsIGlzbik7XG4gICAgICAgICAgICBoZWFwUHVzaChjYW5kaWRhdGVOZWlnaGJvcnMsIGlkeCwgZCwgaSwgaXNuKTtcbiAgICAgICAgICAgIGN1cnJlbnRHcmFwaFsyXVtpXVtqXSA9IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGNhbmRpZGF0ZU5laWdoYm9ycztcbn1cbi8qKlxuICogR2l2ZW4gYW4gYXJyYXkgb2YgaGVhcHMgKG9mIGluZGljZXMgYW5kIHdlaWdodHMpLCB1bnBhY2sgdGhlIGhlYXBcbiAqIG91dCB0byBnaXZlIGFuZCBhcnJheSBvZiBzb3J0ZWQgbGlzdHMgb2YgaW5kaWNlcyBhbmQgd2VpZ2h0cyBieSBpbmNyZWFzaW5nXG4gKiB3ZWlnaHQuIFRoaXMgaXMgZWZmZWN0aXZlbHkganVzdCB0aGUgc2Vjb25kIGhhbGYgb2YgaGVhcCBzb3J0ICh0aGUgZmlyc3RcbiAqIGhhbGYgbm90IGJlaW5nIHJlcXVpcmVkIHNpbmNlIHdlIGFscmVhZHkgaGF2ZSB0aGUgZGF0YSBpbiBhIGhlYXApLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVoZWFwU29ydChoZWFwKSB7XG4gICAgY29uc3QgaW5kaWNlcyA9IGhlYXBbMF07XG4gICAgY29uc3Qgd2VpZ2h0cyA9IGhlYXBbMV07XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbmRpY2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGluZEhlYXAgPSBpbmRpY2VzW2ldO1xuICAgICAgICBjb25zdCBkaXN0SGVhcCA9IHdlaWdodHNbaV07XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgaW5kSGVhcC5sZW5ndGggLSAxOyBqKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZEhlYXBJbmRleCA9IGluZEhlYXAubGVuZ3RoIC0gaiAtIDE7XG4gICAgICAgICAgICBjb25zdCBkaXN0SGVhcEluZGV4ID0gZGlzdEhlYXAubGVuZ3RoIC0gaiAtIDE7XG4gICAgICAgICAgICBjb25zdCB0ZW1wMSA9IGluZEhlYXBbMF07XG4gICAgICAgICAgICBpbmRIZWFwWzBdID0gaW5kSGVhcFtpbmRIZWFwSW5kZXhdO1xuICAgICAgICAgICAgaW5kSGVhcFtpbmRIZWFwSW5kZXhdID0gdGVtcDE7XG4gICAgICAgICAgICBjb25zdCB0ZW1wMiA9IGRpc3RIZWFwWzBdO1xuICAgICAgICAgICAgZGlzdEhlYXBbMF0gPSBkaXN0SGVhcFtkaXN0SGVhcEluZGV4XTtcbiAgICAgICAgICAgIGRpc3RIZWFwW2Rpc3RIZWFwSW5kZXhdID0gdGVtcDI7XG4gICAgICAgICAgICBzaWZ0RG93bihkaXN0SGVhcCwgaW5kSGVhcCwgZGlzdEhlYXBJbmRleCwgMCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgaW5kaWNlcywgd2VpZ2h0cyB9O1xufVxuLyoqXG4gKiBSZXN0b3JlIHRoZSBoZWFwIHByb3BlcnR5IGZvciBhIGhlYXAgd2l0aCBhbiBvdXQgb2YgcGxhY2UgZWxlbWVudFxuICogYXQgcG9zaXRpb24gYGBlbHRgYC4gVGhpcyB3b3JrcyB3aXRoIGEgaGVhcCBwYWlyIHdoZXJlIGhlYXAxIGNhcnJpZXNcbiAqIHRoZSB3ZWlnaHRzIGFuZCBoZWFwMiBob2xkcyB0aGUgY29ycmVzcG9uZGluZyBlbGVtZW50cy5cbiAqL1xuZnVuY3Rpb24gc2lmdERvd24oaGVhcDEsIGhlYXAyLCBjZWlsaW5nLCBlbHQpIHtcbiAgICB3aGlsZSAoZWx0ICogMiArIDEgPCBjZWlsaW5nKSB7XG4gICAgICAgIGNvbnN0IGxlZnRDaGlsZCA9IGVsdCAqIDIgKyAxO1xuICAgICAgICBjb25zdCByaWdodENoaWxkID0gbGVmdENoaWxkICsgMTtcbiAgICAgICAgbGV0IHN3YXAgPSBlbHQ7XG4gICAgICAgIGlmIChoZWFwMVtzd2FwXSA8IGhlYXAxW2xlZnRDaGlsZF0pXG4gICAgICAgICAgICBzd2FwID0gbGVmdENoaWxkO1xuICAgICAgICBpZiAocmlnaHRDaGlsZCA8IGNlaWxpbmcgJiYgaGVhcDFbc3dhcF0gPCBoZWFwMVtyaWdodENoaWxkXSlcbiAgICAgICAgICAgIHN3YXAgPSByaWdodENoaWxkO1xuICAgICAgICBpZiAoc3dhcCA9PT0gZWx0KSB7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRlbXAxID0gaGVhcDFbZWx0XTtcbiAgICAgICAgICAgIGhlYXAxW2VsdF0gPSBoZWFwMVtzd2FwXTtcbiAgICAgICAgICAgIGhlYXAxW3N3YXBdID0gdGVtcDE7XG4gICAgICAgICAgICBjb25zdCB0ZW1wMiA9IGhlYXAyW2VsdF07XG4gICAgICAgICAgICBoZWFwMltlbHRdID0gaGVhcDJbc3dhcF07XG4gICAgICAgICAgICBoZWFwMltzd2FwXSA9IHRlbXAyO1xuICAgICAgICAgICAgZWx0ID0gc3dhcDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qKlxuICogU2VhcmNoIHRoZSBoZWFwIGZvciB0aGUgc21hbGxlc3QgZWxlbWVudCB0aGF0IGlzIHN0aWxsIGZsYWdnZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzbWFsbGVzdEZsYWdnZWQoaGVhcCwgcm93KSB7XG4gICAgY29uc3QgaW5kID0gaGVhcFswXVtyb3ddO1xuICAgIGNvbnN0IGRpc3QgPSBoZWFwWzFdW3Jvd107XG4gICAgY29uc3QgZmxhZyA9IGhlYXBbMl1bcm93XTtcbiAgICBsZXQgbWluRGlzdCA9IEluZmluaXR5O1xuICAgIGxldCByZXN1bHRJbmRleCA9IC0xO1xuICAgIGZvciAobGV0IGkgPSAwOyBpID4gaW5kLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChmbGFnW2ldID09PSAxICYmIGRpc3RbaV0gPCBtaW5EaXN0KSB7XG4gICAgICAgICAgICBtaW5EaXN0ID0gZGlzdFtpXTtcbiAgICAgICAgICAgIHJlc3VsdEluZGV4ID0gaTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAocmVzdWx0SW5kZXggPj0gMCkge1xuICAgICAgICBmbGFnW3Jlc3VsdEluZGV4XSA9IDA7XG4gICAgICAgIHJldHVybiBNYXRoLmZsb29yKGluZFtyZXN1bHRJbmRleF0pO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWFHVmhjQzVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYkltaGxZWEF1ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdPenM3T3pzN096czdPenM3T3pzN08wZEJhVUpITzBGQk1rTklMRTlCUVU4c1MwRkJTeXhMUVVGTExFMUJRVTBzVTBGQlV5eERRVUZETzBGQlNXcERPenM3T3pzN096czdSMEZUUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hSUVVGUkxFTkJRVU1zVDBGQlpTeEZRVUZGTEVsQlFWazdTVUZEY0VRc1RVRkJUU3hWUVVGVkxFZEJRVWNzUTBGQlF5eFRRVUZwUWl4RlFVRkZMRVZCUVVVN1VVRkRka01zVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVTdXVUZEYmtNc1QwRkJUeXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NSVUZCUlN4VFFVRlRMRU5CUVVNc1EwRkJRenRSUVVOMlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTk1MRU5CUVVNc1EwRkJRenRKUVVWR0xFMUJRVTBzU1VGQlNTeEhRVUZUTEVWQlFVVXNRMEZCUXp0SlFVTjBRaXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRE1VSXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTm9ReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRM3BDTEU5QlFVOHNTVUZCU1N4RFFVRkRPMEZCUTJRc1EwRkJRenRCUVVWRU96czdPMGRCU1VjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzWlVGQlpTeERRVU0zUWl4UlFVRm5RaXhGUVVOb1FpeFJRVUZuUWl4RlFVTm9RaXhOUVVGblFqdEpRVVZvUWl4TlFVRk5MRTFCUVUwc1IwRkJSeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPMGxCUTNKRExFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhSUVVGUkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdVVUZEYWtNc1NVRkJTU3haUVVGWkxFZEJRVWNzU1VGQlNTeERRVUZETzFGQlEzaENMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5XTEU5QlFVOHNXVUZCV1N4RlFVRkZPMWxCUTI1Q0xFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTXNWVUZCVlN4RFFVRkRMRkZCUVZFc1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF6dFpRVU4yUXl4SlFVRkpMRTFCUVUwc1IwRkJSeXhMUVVGTExFTkJRVU03V1VGRGJrSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRuUWtGRE1VSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTzI5Q1FVTnVRaXhOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETzI5Q1FVTmtMRTFCUVUwN2FVSkJRMUE3WVVGRFJqdFpRVU5FTEVsQlFVa3NRMEZCUXl4TlFVRk5PMmRDUVVGRkxGbEJRVmtzUjBGQlJ5eExRVUZMTEVOQlFVTTdVMEZEYmtNN1VVRkRSQ3hOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMHRCUTJZN1NVRkRSQ3hQUVVGUExFMUJRVTBzUTBGQlF6dEJRVU5vUWl4RFFVRkRPMEZCUlVRN096czdPenRIUVUxSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEZGQlFWRXNRMEZEZEVJc1NVRkJWU3hGUVVOV0xFZEJRVmNzUlVGRFdDeE5RVUZqTEVWQlEyUXNTMEZCWVN4RlFVTmlMRWxCUVZrN1NVRkZXaXhIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVOMFFpeE5RVUZOTEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZETjBJc1RVRkJUU3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRemRDTERaQ1FVRTJRanRKUVVVM1FpeEpRVUZKTEUxQlFVMHNTVUZCU1N4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRM1JDTEU5QlFVOHNRMEZCUXl4RFFVRkRPMGxCUjFnc2VVTkJRWGxETzBsQlEzcERMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFGQlEzWkRMRWxCUVVrc1MwRkJTeXhMUVVGTExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTTdXVUZEZEVJc1QwRkJUeXhEUVVGRExFTkJRVU03UzBGRFdqdEpRVVZFTEU5QlFVOHNhVUpCUVdsQ0xFTkJRVU1zU1VGQlNTeEZRVUZGTEVkQlFVY3NSVUZCUlN4TlFVRk5MRVZCUVVVc1MwRkJTeXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBGQlF6TkVMRU5CUVVNN1FVRkZSRHM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNhVUpCUVdsQ0xFTkJReTlDTEVsQlFWVXNSVUZEVml4SFFVRlhMRVZCUTFnc1RVRkJZeXhGUVVOa0xFdEJRV0VzUlVGRFlpeEpRVUZaTzBsQlJWb3NUVUZCVFN4UFFVRlBMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUXpkQ0xFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dEpRVU0zUWl4TlFVRk5MRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkZNMElzU1VGQlNTeE5RVUZOTEVsQlFVa3NUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOMFFpeFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVZFlMRGhDUVVFNFFqdEpRVU01UWl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzVFVGQlRTeERRVUZETzBsQlEzQkNMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTTdTVUZEYmtJc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0SlFVVm9RaXgzUlVGQmQwVTdTVUZEZUVVc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlExWXNTVUZCU1N4TFFVRkxMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMlFzVDBGQlR5eEpRVUZKTEVWQlFVVTdVVUZEV0N4TlFVRk5MRWRCUVVjc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTjBRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUlhCQ0xFMUJRVTBzVlVGQlZTeEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTTdVVUZEY2tNc1NVRkJTU3hIUVVGSExFbEJRVWtzVlVGQlZTeEZRVUZGTzFsQlEzSkNMRTFCUVUwN1UwRkRVRHRoUVVGTkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEZWQlFWVXNSVUZCUlR0WlFVTTFRaXhKUVVGSkxFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4TlFVRk5PMmRDUVVOMlFpeExRVUZMTEVkQlFVY3NSMEZCUnl4RFFVRkRPenRuUWtGRldpeE5RVUZOTzFOQlExUTdZVUZCVFN4SlFVRkpMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zU1VGQlNTeFBRVUZQTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVN1dVRkRka01zU1VGQlNTeE5RVUZOTEVkQlFVY3NUMEZCVHl4RFFVRkRMRWRCUVVjc1EwRkJRenRuUWtGRGRrSXNTMEZCU3l4SFFVRkhMRWRCUVVjc1EwRkJRenM3WjBKQlJWb3NUVUZCVFR0VFFVTlVPMkZCUVUwN1dVRkRUQ3hKUVVGSkxFMUJRVTBzUjBGQlJ5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RFFVRkRPMmRDUVVOMlFpeExRVUZMTEVkQlFVY3NSMEZCUnl4RFFVRkRPenRuUWtGRldpeE5RVUZOTzFOQlExUTdVVUZGUkN4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMUZCUXpWQ0xFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VVVGRE5VSXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVVjRRaXhEUVVGRExFZEJRVWNzUzBGQlN5eERRVUZETzB0QlExZzdTVUZGUkN4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzVFVGQlRTeERRVUZETzBsQlEzQkNMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTTdTVUZEYmtJc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0SlFVTm9RaXhQUVVGUExFTkJRVU1zUTBGQlF6dEJRVU5ZTEVOQlFVTTdRVUZGUkRzN096dEhRVWxITzBGQlEwZ3NUVUZCVFN4VlFVRlZMR1ZCUVdVc1EwRkROMElzV1VGQmEwSXNSVUZEYkVJc1UwRkJhVUlzUlVGRGFrSXNWVUZCYTBJc1JVRkRiRUlzWVVGQmNVSXNSVUZEY2tJc1RVRkJaMEk3U1VGRmFFSXNUVUZCVFN4clFrRkJhMElzUjBGQlJ5eFJRVUZSTEVOQlFVTXNVMEZCVXl4RlFVRkZMR0ZCUVdFc1EwRkJReXhEUVVGRE8wbEJRemxFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFRRVUZUTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1VVRkRiRU1zUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGVkJRVlVzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTnVReXhKUVVGSkxGbEJRVmtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETzJkQ1FVTXpRaXhUUVVGVE8xbEJSVmdzVFVGQlRTeEhRVUZITEVkQlFVY3NXVUZCV1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUTJ4RExFMUJRVTBzUjBGQlJ5eEhRVUZITEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTnNReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xbEJRMmhETEZGQlFWRXNRMEZCUXl4clFrRkJhMElzUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRWRCUVVjc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU0zUXl4UlFVRlJMRU5CUVVNc2EwSkJRV3RDTEVWQlFVVXNSMEZCUnl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZETjBNc1dVRkJXU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFRRVU16UWp0TFFVTkdPMGxCUTBRc1QwRkJUeXhyUWtGQmEwSXNRMEZCUXp0QlFVTTFRaXhEUVVGRE8wRkJSVVE3T3pzN08wZEJTMGM3UVVGRFNDeE5RVUZOTEZWQlFWVXNWVUZCVlN4RFFVRkRMRWxCUVZVN1NVRkRia01zVFVGQlRTeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRM2hDTEUxQlFVMHNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVY0UWl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUMEZCVHl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFJRVU4yUXl4TlFVRk5MRTlCUVU4c1IwRkJSeXhQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZETTBJc1RVRkJUU3hSUVVGUkxFZEJRVWNzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUlRWQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVNelF5eE5RVUZOTEZsQlFWa3NSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hIUVVGSExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZETlVNc1RVRkJUU3hoUVVGaExFZEJRVWNzVVVGQlVTeERRVUZETEUxQlFVMHNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJSVGxETEUxQlFVMHNTMEZCU3l4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU42UWl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPMWxCUTI1RExFOUJRVThzUTBGQlF5eFpRVUZaTEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNN1dVRkZPVUlzVFVGQlRTeExRVUZMTEVkQlFVY3NVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRekZDTEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhSUVVGUkxFTkJRVU1zWVVGQllTeERRVUZETEVOQlFVTTdXVUZEZEVNc1VVRkJVU3hEUVVGRExHRkJRV0VzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXp0WlFVVm9ReXhSUVVGUkxFTkJRVU1zVVVGQlVTeEZRVUZGTEU5QlFVOHNSVUZCUlN4aFFVRmhMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03VTBGREwwTTdTMEZEUmp0SlFVTkVMRTlCUVU4c1JVRkJReXhQUVVGUExFVkJRVVVzVDBGQlR5eEZRVUZETEVOQlFVTTdRVUZETlVJc1EwRkJRenRCUVVWRU96czdPMGRCU1VjN1FVRkRTQ3hUUVVGVExGRkJRVkVzUTBGRFppeExRVUZsTEVWQlEyWXNTMEZCWlN4RlFVTm1MRTlCUVdVc1JVRkRaaXhIUVVGWE8wbEJSVmdzVDBGQlR5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhQUVVGUExFVkJRVVU3VVVGRE5VSXNUVUZCVFN4VFFVRlRMRWRCUVVjc1IwRkJSeXhIUVVGSExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZET1VJc1RVRkJUU3hWUVVGVkxFZEJRVWNzVTBGQlV5eEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTnFReXhKUVVGSkxFbEJRVWtzUjBGQlJ5eEhRVUZITEVOQlFVTTdVVUZGWml4SlFVRkpMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVRkRPMWxCUTJoRExFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTTdVVUZGYmtJc1NVRkJTU3hWUVVGVkxFZEJRVWNzVDBGQlR5eEpRVUZKTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZETzFsQlEzcEVMRWxCUVVrc1IwRkJSeXhWUVVGVkxFTkJRVU03VVVGSGNFSXNTVUZCU1N4SlFVRkpMRXRCUVVzc1IwRkJSeXhGUVVGRk8xbEJRMmhDTEUxQlFVMDdVMEZEVUR0aFFVRk5PMWxCUTB3c1RVRkJUU3hMUVVGTExFZEJRVWNzUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUTNwQ0xFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03V1VGRGVrSXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF6dFpRVVZ3UWl4TlFVRk5MRXRCUVVzc1IwRkJSeXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZEZWtJc1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRaUVVONlFpeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1MwRkJTeXhEUVVGRE8xbEJRM0JDTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNN1UwRkRXanRMUVVOR08wRkJRMGdzUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHVkJRV1VzUTBGQlF5eEpRVUZWTEVWQlFVVXNSMEZCVnp0SlFVTnlSQ3hOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRGVrSXNUVUZCVFN4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUXpGQ0xFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dEpRVVV4UWl4SlFVRkpMRTlCUVU4c1IwRkJSeXhSUVVGUkxFTkJRVU03U1VGRGRrSXNTVUZCU1N4WFFVRlhMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmNrSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3VVVGRGJrTXNTVUZCU1N4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhQUVVGUExFVkJRVVU3V1VGRGRFTXNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5zUWl4WFFVRlhMRWRCUVVjc1EwRkJReXhEUVVGRE8xTkJRMnBDTzB0QlEwWTdTVUZGUkN4SlFVRkpMRmRCUVZjc1NVRkJTU3hEUVVGRExFVkJRVVU3VVVGRGNFSXNTVUZCU1N4RFFVRkRMRmRCUVZjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU4wUWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1MwRkRja003VTBGQlRUdFJRVU5NTEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNN1MwRkRXRHRCUVVOSUxFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lJdktpcGNiaUFxSUVCc2FXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSURJd01Ua2dSMjl2WjJ4bElFeE1ReTRnUVd4c0lGSnBaMmgwY3lCU1pYTmxjblpsWkM1Y2JpQXFYRzRnS2lCTWFXTmxibk5sWkNCMWJtUmxjaUIwYUdVZ1FYQmhZMmhsSUV4cFkyVnVjMlVzSUZabGNuTnBiMjRnTWk0d0lDaDBhR1VnWENKTWFXTmxibk5sWENJcE8xeHVJQ29nZVc5MUlHMWhlU0J1YjNRZ2RYTmxJSFJvYVhNZ1ptbHNaU0JsZUdObGNIUWdhVzRnWTI5dGNHeHBZVzVqWlNCM2FYUm9JSFJvWlNCTWFXTmxibk5sTGx4dUlDb2dXVzkxSUcxaGVTQnZZblJoYVc0Z1lTQmpiM0I1SUc5bUlIUm9aU0JNYVdObGJuTmxJR0YwWEc0Z0tseHVJQ29nSUNBZ0lHaDBkSEE2THk5M2QzY3VZWEJoWTJobExtOXlaeTlzYVdObGJuTmxjeTlNU1VORlRsTkZMVEl1TUZ4dUlDcGNiaUFxSUZWdWJHVnpjeUJ5WlhGMWFYSmxaQ0JpZVNCaGNIQnNhV05oWW14bElHeGhkeUJ2Y2lCaFozSmxaV1FnZEc4Z2FXNGdkM0pwZEdsdVp5d2djMjltZEhkaGNtVmNiaUFxSUdScGMzUnlhV0oxZEdWa0lIVnVaR1Z5SUhSb1pTQk1hV05sYm5ObElHbHpJR1JwYzNSeWFXSjFkR1ZrSUc5dUlHRnVJRndpUVZNZ1NWTmNJaUJDUVZOSlV5eGNiaUFxSUZkSlZFaFBWVlFnVjBGU1VrRk9WRWxGVXlCUFVpQkRUMDVFU1ZSSlQwNVRJRTlHSUVGT1dTQkxTVTVFTENCbGFYUm9aWElnWlhod2NtVnpjeUJ2Y2lCcGJYQnNhV1ZrTGx4dUlDb2dVMlZsSUhSb1pTQk1hV05sYm5ObElHWnZjaUIwYUdVZ2MzQmxZMmxtYVdNZ2JHRnVaM1ZoWjJVZ1oyOTJaWEp1YVc1bklIQmxjbTFwYzNOcGIyNXpJR0Z1WkZ4dUlDb2diR2x0YVhSaGRHbHZibk1nZFc1a1pYSWdkR2hsSUV4cFkyVnVjMlV1WEc0Z0tpQTlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQxY2JpQXFMMXh1WEc0dktpcGNiaUFxSUZSb2FYTWdhWE1nWVNCS1lYWmhVMk55YVhCMElISmxhVzF3YkdWdFpXNTBZWFJwYjI0Z2IyWWdWVTFCVUNBb2IzSnBaMmx1WVd3Z2JHbGpaVzV6WlNCaVpXeHZkeWtzSUdaeWIyMWNiaUFxSUhSb1pTQndlWFJvYjI0Z2FXMXdiR1Z0Wlc1MFlYUnBiMjRnWm05MWJtUWdZWFFnYUhSMGNITTZMeTluYVhSb2RXSXVZMjl0TDJ4dFkybHVibVZ6TDNWdFlYQXVYRzRnS2x4dUlDb2dRR0YxZEdodmNpQmhibVI1WTI5bGJtVnVRR2R2YjJkc1pTNWpiMjBnS0VGdVpIa2dRMjlsYm1WdUtWeHVJQ292WEc1Y2JpOHFLbHh1SUNvZ1FHeHBZMlZ1YzJWY2JpQXFJRUpUUkNBekxVTnNZWFZ6WlNCTWFXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSUNoaktTQXlNREUzTENCTVpXeGhibVFnVFdOSmJtNWxjMXh1SUNvZ1FXeHNJSEpwWjJoMGN5QnlaWE5sY25abFpDNWNiaUFxWEc0Z0tpQlNaV1JwYzNSeWFXSjFkR2x2YmlCaGJtUWdkWE5sSUdsdUlITnZkWEpqWlNCaGJtUWdZbWx1WVhKNUlHWnZjbTF6TENCM2FYUm9JRzl5SUhkcGRHaHZkWFJjYmlBcUlHMXZaR2xtYVdOaGRHbHZiaXdnWVhKbElIQmxjbTFwZEhSbFpDQndjbTkyYVdSbFpDQjBhR0YwSUhSb1pTQm1iMnhzYjNkcGJtY2dZMjl1WkdsMGFXOXVjeUJoY21VZ2JXVjBPbHh1SUNwY2JpQXFJQ29nVW1Wa2FYTjBjbWxpZFhScGIyNXpJRzltSUhOdmRYSmpaU0JqYjJSbElHMTFjM1FnY21WMFlXbHVJSFJvWlNCaFltOTJaU0JqYjNCNWNtbG5hSFFnYm05MGFXTmxMQ0IwYUdselhHNGdLaUFnSUd4cGMzUWdiMllnWTI5dVpHbDBhVzl1Y3lCaGJtUWdkR2hsSUdadmJHeHZkMmx1WnlCa2FYTmpiR0ZwYldWeUxseHVJQ3BjYmlBcUlDb2dVbVZrYVhOMGNtbGlkWFJwYjI1eklHbHVJR0pwYm1GeWVTQm1iM0p0SUcxMWMzUWdjbVZ3Y205a2RXTmxJSFJvWlNCaFltOTJaU0JqYjNCNWNtbG5hSFFnYm05MGFXTmxMRnh1SUNvZ0lDQjBhR2x6SUd4cGMzUWdiMllnWTI5dVpHbDBhVzl1Y3lCaGJtUWdkR2hsSUdadmJHeHZkMmx1WnlCa2FYTmpiR0ZwYldWeUlHbHVJSFJvWlNCa2IyTjFiV1Z1ZEdGMGFXOXVYRzRnS2lBZ0lHRnVaQzl2Y2lCdmRHaGxjaUJ0WVhSbGNtbGhiSE1nY0hKdmRtbGtaV1FnZDJsMGFDQjBhR1VnWkdsemRISnBZblYwYVc5dUxseHVJQ3BjYmlBcUlDb2dUbVZwZEdobGNpQjBhR1VnYm1GdFpTQnZaaUIwYUdVZ1kyOXdlWEpwWjJoMElHaHZiR1JsY2lCdWIzSWdkR2hsSUc1aGJXVnpJRzltSUdsMGMxeHVJQ29nSUNCamIyNTBjbWxpZFhSdmNuTWdiV0Y1SUdKbElIVnpaV1FnZEc4Z1pXNWtiM0p6WlNCdmNpQndjbTl0YjNSbElIQnliMlIxWTNSeklHUmxjbWwyWldRZ1puSnZiVnh1SUNvZ0lDQjBhR2x6SUhOdlpuUjNZWEpsSUhkcGRHaHZkWFFnYzNCbFkybG1hV01nY0hKcGIzSWdkM0pwZEhSbGJpQndaWEp0YVhOemFXOXVMbHh1SUNwY2JpQXFJRlJJU1ZNZ1UwOUdWRmRCVWtVZ1NWTWdVRkpQVmtsRVJVUWdRbGtnVkVoRklFTlBVRmxTU1VkSVZDQklUMHhFUlZKVElFRk9SQ0JEVDA1VVVrbENWVlJQVWxNZ1hDSkJVeUJKVTF3aVhHNGdLaUJCVGtRZ1FVNVpJRVZZVUZKRlUxTWdUMUlnU1UxUVRFbEZSQ0JYUVZKU1FVNVVTVVZUTENCSlRrTk1WVVJKVGtjc0lFSlZWQ0JPVDFRZ1RFbE5TVlJGUkNCVVR5d2dWRWhGWEc0Z0tpQkpUVkJNU1VWRUlGZEJVbEpCVGxSSlJWTWdUMFlnVFVWU1EwaEJUbFJCUWtsTVNWUlpJRUZPUkNCR1NWUk9SVk5USUVaUFVpQkJJRkJCVWxSSlExVk1RVklnVUZWU1VFOVRSU0JCVWtWY2JpQXFJRVJKVTBOTVFVbE5SVVF1SUVsT0lFNVBJRVZXUlU1VUlGTklRVXhNSUZSSVJTQkRUMUJaVWtsSFNGUWdTRTlNUkVWU0lFOVNJRU5QVGxSU1NVSlZWRTlTVXlCQ1JTQk1TVUZDVEVWY2JpQXFJRVpQVWlCQlRsa2dSRWxTUlVOVUxDQkpUa1JKVWtWRFZDd2dTVTVEU1VSRlRsUkJUQ3dnVTFCRlEwbEJUQ3dnUlZoRlRWQk1RVkpaTENCUFVpQkRUMDVUUlZGVlJVNVVTVUZNWEc0Z0tpQkVRVTFCUjBWVElDaEpUa05NVlVSSlRrY3NJRUpWVkNCT1QxUWdURWxOU1ZSRlJDQlVUeXdnVUZKUFExVlNSVTFGVGxRZ1QwWWdVMVZDVTFSSlZGVlVSU0JIVDA5RVV5QlBVbHh1SUNvZ1UwVlNWa2xEUlZNN0lFeFBVMU1nVDBZZ1ZWTkZMQ0JFUVZSQkxDQlBVaUJRVWs5R1NWUlRPeUJQVWlCQ1ZWTkpUa1ZUVXlCSlRsUkZVbEpWVUZSSlQwNHBJRWhQVjBWV1JWSmNiaUFxSUVOQlZWTkZSQ0JCVGtRZ1QwNGdRVTVaSUZSSVJVOVNXU0JQUmlCTVNVRkNTVXhKVkZrc0lGZElSVlJJUlZJZ1NVNGdRMDlPVkZKQlExUXNJRk5VVWtsRFZDQk1TVUZDU1V4SlZGa3NYRzRnS2lCUFVpQlVUMUpVSUNoSlRrTk1WVVJKVGtjZ1RrVkhURWxIUlU1RFJTQlBVaUJQVkVoRlVsZEpVMFVwSUVGU1NWTkpUa2NnU1U0Z1FVNVpJRmRCV1NCUFZWUWdUMFlnVkVoRklGVlRSVnh1SUNvZ1QwWWdWRWhKVXlCVFQwWlVWMEZTUlN3Z1JWWkZUaUJKUmlCQlJGWkpVMFZFSUU5R0lGUklSU0JRVDFOVFNVSkpURWxVV1NCUFJpQlRWVU5JSUVSQlRVRkhSUzVjYmlBcUwxeHVYRzVwYlhCdmNuUWdlMUpoYm1SdmJVWnVmU0JtY205dElDY3VMM1Z0WVhBbk8xeHVhVzF3YjNKMElDb2dZWE1nZFhScGJITWdabkp2YlNBbkxpOTFkR2xzY3ljN1hHNWNibVY0Y0c5eWRDQjBlWEJsSUVobFlYQWdQU0J1ZFcxaVpYSmJYVnRkVzEwN1hHNWNiaThxS2x4dUlDb2dJRU52Ym5OMGNuVmpkRzl5SUdadmNpQjBhR1VnYUdWaGNDQnZZbXBsWTNSekxpQlVhR1VnYUdWaGNITWdZWEpsSUhWelpXUmNiaUFxSUdadmNpQmhjSEJ5YjNocGJXRjBaU0J1WldGeVpYTjBJRzVsYVdkb1ltOXlJSE5sWVhKamFDd2diV0ZwYm5SaGFXNXBibWNnWVNCc2FYTjBJRzltSUhCdmRHVnVkR2xoYkZ4dUlDb2dibVZwWjJoaWIzSnpJSE52Y25SbFpDQmllU0IwYUdWcGNpQmthWE4wWVc1alpTNGdWMlVnWVd4emJ5Qm1iR0ZuSUdsbUlIQnZkR1Z1ZEdsaGJDQnVaV2xuYUdKdmNuTmNiaUFxSUdGeVpTQnVaWGRzZVNCaFpHUmxaQ0IwYnlCMGFHVWdiR2x6ZENCdmNpQnViM1F1SUVsdWRHVnlibUZzYkhrZ2RHaHBjeUJwY3lCemRHOXlaV1FnWVhOY2JpQXFJR0VnYzJsdVoyeGxJR0Z5Y21GNU95QjBhR1VnWm1seWMzUWdZWGhwY3lCa1pYUmxjbTFwYm1WeklIZG9aWFJvWlhJZ2QyVWdZWEpsSUd4dmIydHBibWNnWVhRZ2RHaGxYRzRnS2lCaGNuSmhlU0J2WmlCallXNWthV1JoZEdVZ2FXNWthV05sY3l3Z2RHaGxJR0Z5Y21GNUlHOW1JR1JwYzNSaGJtTmxjeXdnYjNJZ2RHaGxJR1pzWVdjZ1lYSnlZWGtnWm05eVhHNGdLaUIzYUdWMGFHVnlJR1ZzWlcxbGJuUnpJR0Z5WlNCdVpYY2diM0lnYm05MExpQkZZV05vSUc5bUlIUm9aWE5sSUdGeWNtRjVjeUJoY21VZ2IyWWdjMmhoY0dWY2JpQXFJQ2hnWUc1UWIybHVkSE5nWUN3Z1lHQnphWHBsWUdBcFhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ0WVd0bFNHVmhjQ2h1VUc5cGJuUnpPaUJ1ZFcxaVpYSXNJSE5wZW1VNklHNTFiV0psY2lrNklFaGxZWEFnZTF4dUlDQmpiMjV6ZENCdFlXdGxRWEp5WVhseklEMGdLR1pwYkd4V1lXeDFaVG9nYm5WdFltVnlLU0E5UGlCN1hHNGdJQ0FnY21WMGRYSnVJSFYwYVd4ekxtVnRjSFI1S0c1UWIybHVkSE1wTG0xaGNDZ29LU0E5UGlCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnZFhScGJITXVabWxzYkdWa0tITnBlbVVzSUdacGJHeFdZV3gxWlNrN1hHNGdJQ0FnZlNrN1hHNGdJSDA3WEc1Y2JpQWdZMjl1YzNRZ2FHVmhjRG9nU0dWaGNDQTlJRnRkTzF4dUlDQm9aV0Z3TG5CMWMyZ29iV0ZyWlVGeWNtRjVjeWd0TVNrcE8xeHVJQ0JvWldGd0xuQjFjMmdvYldGclpVRnljbUY1Y3loSmJtWnBibWwwZVNrcE8xeHVJQ0JvWldGd0xuQjFjMmdvYldGclpVRnljbUY1Y3lnd0tTazdYRzRnSUhKbGRIVnliaUJvWldGd08xeHVmVnh1WEc0dktpcGNiaUFxSUVkbGJtVnlZWFJsSUc1ZmMyRnRjR3hsY3lCdFlXNTVJR2x1ZEdWblpYSnpJR1p5YjIwZ01DQjBieUJ3YjI5c1gzTnBlbVVnYzNWamFDQjBhR0YwSUc1dlhHNGdLaUJwYm5SbFoyVnlJR2x6SUhObGJHVmpkR1ZrSUhSM2FXTmxMaUJVYUdVZ1pIVndiR2xqWVhScGIyNGdZMjl1YzNSeVlXbHVkQ0JwY3lCaFkyaHBaWFpsWkNCMmFXRmNiaUFxSUhKbGFtVmpkR2x2YmlCellXMXdiR2x1Wnk1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSEpsYW1WamRHbHZibE5oYlhCc1pTaGNiaUFnYmxOaGJYQnNaWE02SUc1MWJXSmxjaXhjYmlBZ2NHOXZiRk5wZW1VNklHNTFiV0psY2l4Y2JpQWdjbUZ1Wkc5dE9pQlNZVzVrYjIxR2JseHVLU0I3WEc0Z0lHTnZibk4wSUhKbGMzVnNkQ0E5SUhWMGFXeHpMbnBsY205ektHNVRZVzF3YkdWektUdGNiaUFnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCdVUyRnRjR3hsY3pzZ2FTc3JLU0I3WEc0Z0lDQWdiR1YwSUhKbGFtVmpkRk5oYlhCc1pTQTlJSFJ5ZFdVN1hHNGdJQ0FnYkdWMElHb2dQU0F3TzF4dUlDQWdJSGRvYVd4bElDaHlaV3BsWTNSVFlXMXdiR1VwSUh0Y2JpQWdJQ0FnSUdvZ1BTQjFkR2xzY3k1MFlYVlNZVzVrU1c1MEtIQnZiMnhUYVhwbExDQnlZVzVrYjIwcE8xeHVJQ0FnSUNBZ2JHVjBJR0p5YjJ0bGJpQTlJR1poYkhObE8xeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2F5QTlJREE3SUdzZ1BDQnBPeUJyS3lzcElIdGNiaUFnSUNBZ0lDQWdhV1lnS0dvZ1BUMDlJSEpsYzNWc2RGdHJYU2tnZTF4dUlDQWdJQ0FnSUNBZ0lHSnliMnRsYmlBOUlIUnlkV1U3WEc0Z0lDQWdJQ0FnSUNBZ1luSmxZV3M3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JpQWdJQ0FnSUdsbUlDZ2hZbkp2YTJWdUtTQnlaV3BsWTNSVFlXMXdiR1VnUFNCbVlXeHpaVHRjYmlBZ0lDQjlYRzRnSUNBZ2NtVnpkV3gwVzJsZElEMGdhanRjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdjbVZ6ZFd4ME8xeHVmVnh1WEc0dktpcGNiaUFxSUZCMWMyZ2dZU0J1WlhjZ1pXeGxiV1Z1ZENCdmJuUnZJSFJvWlNCb1pXRndMaUJVYUdVZ2FHVmhjQ0J6ZEc5eVpYTWdjRzkwWlc1MGFXRnNJRzVsYVdkb1ltOXljMXh1SUNvZ1ptOXlJR1ZoWTJnZ1pHRjBZU0J3YjJsdWRDNGdWR2hsSUdCZ2NtOTNZR0FnY0dGeVlXMWxkR1Z5SUdSbGRHVnliV2x1WlhNZ2QyaHBZMmdnWkdGMFlTQndiMmx1ZENCM1pWeHVJQ29nWVhKbElHRmtaSEpsYzNOcGJtY3NJSFJvWlNCZ1lIZGxhV2RvZEdCZ0lHUmxkR1Z5YldsdVpYTWdkR2hsSUdScGMzUmhibU5sSUNobWIzSWdhR1ZoY0NCemIzSjBhVzVuS1N4Y2JpQXFJSFJvWlNCZ1lHbHVaR1Y0WUdBZ2FYTWdkR2hsSUdWc1pXMWxiblFnZEc4Z1lXUmtMQ0JoYm1RZ2RHaGxJR1pzWVdjZ1pHVjBaWEp0YVc1bGN5QjNhR1YwYUdWeUlIUm9hWE5jYmlBcUlHbHpJSFJ2SUdKbElHTnZibk5wWkdWeVpXUWdZU0J1WlhjZ1lXUmthWFJwYjI0dVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJvWldGd1VIVnphQ2hjYmlBZ2FHVmhjRG9nU0dWaGNDeGNiaUFnY205M09pQnVkVzFpWlhJc1hHNGdJSGRsYVdkb2REb2diblZ0WW1WeUxGeHVJQ0JwYm1SbGVEb2diblZ0WW1WeUxGeHVJQ0JtYkdGbk9pQnVkVzFpWlhKY2JpazZJRzUxYldKbGNpQjdYRzRnSUhKdmR5QTlJRTFoZEdndVpteHZiM0lvY205M0tUdGNiaUFnWTI5dWMzUWdhVzVrYVdObGN5QTlJR2hsWVhCYk1GMWJjbTkzWFR0Y2JpQWdZMjl1YzNRZ2QyVnBaMmgwY3lBOUlHaGxZWEJiTVYxYmNtOTNYVHRjYmlBZ0x5OWpiMjV6ZENCcGMwNWxkeUE5SUdobFlYQmJNbDFiY205M1hUdGNibHh1SUNCcFppQW9kMlZwWjJoMElENDlJSGRsYVdkb2RITmJNRjBwWEc0Z0lDQWdjbVYwZFhKdUlEQTdYRzVjYmx4dUlDQXZMeUJDY21WaGF5QnBaaUIzWlNCaGJISmxZV1I1SUdoaGRtVWdkR2hwY3lCbGJHVnRaVzUwTGx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR2x1WkdsalpYTXViR1Z1WjNSb095QnBLeXNwSUh0Y2JpQWdJQ0JwWmlBb2FXNWtaWGdnUFQwOUlHbHVaR2xqWlhOYmFWMHBYRzRnSUNBZ0lDQnlaWFIxY200Z01EdGNiaUFnZlZ4dVhHNGdJSEpsZEhWeWJpQjFibU5vWldOclpXUklaV0Z3VUhWemFDaG9aV0Z3TENCeWIzY3NJSGRsYVdkb2RDd2dhVzVrWlhnc0lHWnNZV2NwTzF4dWZWeHVYRzR2S2lwY2JpQXFJRkIxYzJnZ1lTQnVaWGNnWld4bGJXVnVkQ0J2Ym5SdklIUm9aU0JvWldGd0xpQlVhR1VnYUdWaGNDQnpkRzl5WlhNZ2NHOTBaVzUwYVdGc0lHNWxhV2RvWW05eWMxeHVJQ29nWm05eUlHVmhZMmdnWkdGMFlTQndiMmx1ZEM0Z1ZHaGxJR0JnY205M1lHQWdjR0Z5WVcxbGRHVnlJR1JsZEdWeWJXbHVaWE1nZDJocFkyZ2daR0YwWVNCd2IybHVkQ0IzWlZ4dUlDb2dZWEpsSUdGa1pISmxjM05wYm1jc0lIUm9aU0JnWUhkbGFXZG9kR0JnSUdSbGRHVnliV2x1WlhNZ2RHaGxJR1JwYzNSaGJtTmxJQ2htYjNJZ2FHVmhjQ0J6YjNKMGFXNW5LU3hjYmlBcUlIUm9aU0JnWUdsdVpHVjRZR0FnYVhNZ2RHaGxJR1ZzWlcxbGJuUWdkRzhnWVdSa0xDQmhibVFnZEdobElHWnNZV2NnWkdWMFpYSnRhVzVsY3lCM2FHVjBhR1Z5SUhSb2FYTmNiaUFxSUdseklIUnZJR0psSUdOdmJuTnBaR1Z5WldRZ1lTQnVaWGNnWVdSa2FYUnBiMjR1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQjFibU5vWldOclpXUklaV0Z3VUhWemFDaGNiaUFnYUdWaGNEb2dTR1ZoY0N4Y2JpQWdjbTkzT2lCdWRXMWlaWElzWEc0Z0lIZGxhV2RvZERvZ2JuVnRZbVZ5TEZ4dUlDQnBibVJsZURvZ2JuVnRZbVZ5TEZ4dUlDQm1iR0ZuT2lCdWRXMWlaWEpjYmlrNklHNTFiV0psY2lCN1hHNGdJR052Ym5OMElHbHVaR2xqWlhNZ1BTQm9aV0Z3V3pCZFczSnZkMTA3WEc0Z0lHTnZibk4wSUhkbGFXZG9kSE1nUFNCb1pXRndXekZkVzNKdmQxMDdYRzRnSUdOdmJuTjBJR2x6VG1WM0lEMGdhR1ZoY0ZzeVhWdHliM2RkTzF4dVhHNGdJR2xtSUNoM1pXbG5hSFFnUGowZ2QyVnBaMmgwYzFzd1hTbGNiaUFnSUNCeVpYUjFjbTRnTUR0Y2JseHVYRzRnSUM4dklFbHVjMlZ5ZENCMllXd2dZWFFnY0c5emFYUnBiMjRnZW1WeWIxeHVJQ0IzWldsbmFIUnpXekJkSUQwZ2QyVnBaMmgwTzF4dUlDQnBibVJwWTJWeld6QmRJRDBnYVc1a1pYZzdYRzRnSUdselRtVjNXekJkSUQwZ1pteGhaenRjYmx4dUlDQXZMeUJFWlhOalpXNWtJSFJvWlNCb1pXRndMQ0J6ZDJGd2NHbHVaeUIyWVd4MVpYTWdkVzUwYVd3Z2RHaGxJRzFoZUNCb1pXRndJR055YVhSbGNtbHZiaUJwY3lCdFpYUmNiaUFnYkdWMElHa2dQU0F3TzF4dUlDQnNaWFFnYVZOM1lYQWdQU0F3TzF4dUlDQjNhR2xzWlNBb2RISjFaU2tnZTF4dUlDQWdJR052Ym5OMElHbGpNU0E5SURJZ0tpQnBJQ3NnTVR0Y2JpQWdJQ0JqYjI1emRDQnBZeklnUFNCcFl6RWdLeUF4TzF4dVhHNGdJQ0FnWTI5dWMzUWdhR1ZoY0ZOb1lYQmxNaUE5SUdobFlYQmJNRjFiTUYwdWJHVnVaM1JvTzF4dUlDQWdJR2xtSUNocFl6RWdQajBnYUdWaGNGTm9ZWEJsTWlrZ2UxeHVJQ0FnSUNBZ1luSmxZV3M3WEc0Z0lDQWdmU0JsYkhObElHbG1JQ2hwWXpJZ1BqMGdhR1ZoY0ZOb1lYQmxNaWtnZTF4dUlDQWdJQ0FnYVdZZ0tIZGxhV2RvZEhOYmFXTXhYU0ErSUhkbGFXZG9kQ2xjYmlBZ0lDQWdJQ0FnYVZOM1lYQWdQU0JwWXpFN1hHNGdJQ0FnSUNCbGJITmxYRzRnSUNBZ0lDQWdJR0p5WldGck8xeHVJQ0FnSUgwZ1pXeHpaU0JwWmlBb2QyVnBaMmgwYzF0cFl6RmRJRDQ5SUhkbGFXZG9kSE5iYVdNeVhTa2dlMXh1SUNBZ0lDQWdhV1lnS0hkbGFXZG9kQ0E4SUhkbGFXZG9kSE5iYVdNeFhTbGNiaUFnSUNBZ0lDQWdhVk4zWVhBZ1BTQnBZekU3WEc0Z0lDQWdJQ0JsYkhObFhHNGdJQ0FnSUNBZ0lHSnlaV0ZyTzF4dUlDQWdJSDBnWld4elpTQjdYRzRnSUNBZ0lDQnBaaUFvZDJWcFoyaDBJRHdnZDJWcFoyaDBjMXRwWXpKZEtWeHVJQ0FnSUNBZ0lDQnBVM2RoY0NBOUlHbGpNanRjYmlBZ0lDQWdJR1ZzYzJWY2JpQWdJQ0FnSUNBZ1luSmxZV3M3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdkMlZwWjJoMGMxdHBYU0E5SUhkbGFXZG9kSE5iYVZOM1lYQmRPMXh1SUNBZ0lHbHVaR2xqWlhOYmFWMGdQU0JwYm1ScFkyVnpXMmxUZDJGd1hUdGNiaUFnSUNCcGMwNWxkMXRwWFNBOUlHbHpUbVYzVzJsVGQyRndYVHRjYmx4dUlDQWdJR2tnUFNCcFUzZGhjRHRjYmlBZ2ZWeHVYRzRnSUhkbGFXZG9kSE5iYVYwZ1BTQjNaV2xuYUhRN1hHNGdJR2x1WkdsalpYTmJhVjBnUFNCcGJtUmxlRHRjYmlBZ2FYTk9aWGRiYVYwZ1BTQm1iR0ZuTzF4dUlDQnlaWFIxY200Z01UdGNibjFjYmx4dUx5b3FYRzRnS2lCQ2RXbHNaQ0JoSUdobFlYQWdiMllnWTJGdVpHbGtZWFJsSUc1bGFXZG9ZbTl5Y3lCbWIzSWdibVZoY21WemRDQnVaV2xuYUdKdmNpQmtaWE5qWlc1MExpQkdiM0pjYmlBcUlHVmhZMmdnZG1WeWRHVjRJSFJvWlNCallXNWthV1JoZEdVZ2JtVnBaMmhpYjNKeklHRnlaU0JoYm5rZ1kzVnljbVZ1ZENCdVpXbG5hR0p2Y25Nc0lHRnVaQ0JoYm5sY2JpQXFJSFpsY25ScFkyVnpJSFJvWVhRZ2FHRjJaU0IwYUdVZ2RtVnlkR1Y0SUdGeklHOXVaU0J2WmlCMGFHVnBjaUJ1WldGeVpYTjBJRzVsYVdkb1ltOXljeTVjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHSjFhV3hrUTJGdVpHbGtZWFJsY3loY2JpQWdZM1Z5Y21WdWRFZHlZWEJvT2lCSVpXRndMRnh1SUNCdVZtVnlkR2xqWlhNNklHNTFiV0psY2l4Y2JpQWdiazVsYVdkb1ltOXljem9nYm5WdFltVnlMRnh1SUNCdFlYaERZVzVrYVdSaGRHVnpPaUJ1ZFcxaVpYSXNYRzRnSUhKaGJtUnZiVG9nVW1GdVpHOXRSbTVjYmlrZ2UxeHVJQ0JqYjI1emRDQmpZVzVrYVdSaGRHVk9aV2xuYUdKdmNuTWdQU0J0WVd0bFNHVmhjQ2h1Vm1WeWRHbGpaWE1zSUcxaGVFTmhibVJwWkdGMFpYTXBPMXh1SUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHNVdaWEowYVdObGN6c2dhU3NyS1NCN1hHNGdJQ0FnWm05eUlDaHNaWFFnYWlBOUlEQTdJR29nUENCdVRtVnBaMmhpYjNKek95QnFLeXNwSUh0Y2JpQWdJQ0FnSUdsbUlDaGpkWEp5Wlc1MFIzSmhjR2hiTUYxYmFWMWJhbDBnUENBd0tWeHVJQ0FnSUNBZ0lDQmpiMjUwYVc1MVpUdGNibHh1SUNBZ0lDQWdZMjl1YzNRZ2FXUjRJRDBnWTNWeWNtVnVkRWR5WVhCb1d6QmRXMmxkVzJwZE8xeHVJQ0FnSUNBZ1kyOXVjM1FnYVhOdUlEMGdZM1Z5Y21WdWRFZHlZWEJvV3pKZFcybGRXMnBkTzF4dUlDQWdJQ0FnWTI5dWMzUWdaQ0E5SUhWMGFXeHpMblJoZFZKaGJtUW9jbUZ1Wkc5dEtUdGNiaUFnSUNBZ0lHaGxZWEJRZFhOb0tHTmhibVJwWkdGMFpVNWxhV2RvWW05eWN5d2dhU3dnWkN3Z2FXUjRMQ0JwYzI0cE8xeHVJQ0FnSUNBZ2FHVmhjRkIxYzJnb1kyRnVaR2xrWVhSbFRtVnBaMmhpYjNKekxDQnBaSGdzSUdRc0lHa3NJR2x6YmlrN1hHNGdJQ0FnSUNCamRYSnlaVzUwUjNKaGNHaGJNbDFiYVYxYmFsMGdQU0F3TzF4dUlDQWdJSDFjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdZMkZ1Wkdsa1lYUmxUbVZwWjJoaWIzSnpPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFZHBkbVZ1SUdGdUlHRnljbUY1SUc5bUlHaGxZWEJ6SUNodlppQnBibVJwWTJWeklHRnVaQ0IzWldsbmFIUnpLU3dnZFc1d1lXTnJJSFJvWlNCb1pXRndYRzRnS2lCdmRYUWdkRzhnWjJsMlpTQmhibVFnWVhKeVlYa2diMllnYzI5eWRHVmtJR3hwYzNSeklHOW1JR2x1WkdsalpYTWdZVzVrSUhkbGFXZG9kSE1nWW5rZ2FXNWpjbVZoYzJsdVoxeHVJQ29nZDJWcFoyaDBMaUJVYUdseklHbHpJR1ZtWm1WamRHbDJaV3g1SUdwMWMzUWdkR2hsSUhObFkyOXVaQ0JvWVd4bUlHOW1JR2hsWVhBZ2MyOXlkQ0FvZEdobElHWnBjbk4wWEc0Z0tpQm9ZV3htSUc1dmRDQmlaV2x1WnlCeVpYRjFhWEpsWkNCemFXNWpaU0IzWlNCaGJISmxZV1I1SUdoaGRtVWdkR2hsSUdSaGRHRWdhVzRnWVNCb1pXRndLUzVjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHUmxhR1ZoY0ZOdmNuUW9hR1ZoY0RvZ1NHVmhjQ2tnZTF4dUlDQmpiMjV6ZENCcGJtUnBZMlZ6SUQwZ2FHVmhjRnN3WFR0Y2JpQWdZMjl1YzNRZ2QyVnBaMmgwY3lBOUlHaGxZWEJiTVYwN1hHNWNiaUFnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCcGJtUnBZMlZ6TG14bGJtZDBhRHNnYVNzcktTQjdYRzRnSUNBZ1kyOXVjM1FnYVc1a1NHVmhjQ0E5SUdsdVpHbGpaWE5iYVYwN1hHNGdJQ0FnWTI5dWMzUWdaR2x6ZEVobFlYQWdQU0IzWldsbmFIUnpXMmxkTzF4dVhHNGdJQ0FnWm05eUlDaHNaWFFnYWlBOUlEQTdJR29nUENCcGJtUklaV0Z3TG14bGJtZDBhQ0F0SURFN0lHb3JLeWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdhVzVrU0dWaGNFbHVaR1Y0SUQwZ2FXNWtTR1ZoY0M1c1pXNW5kR2dnTFNCcUlDMGdNVHRjYmlBZ0lDQWdJR052Ym5OMElHUnBjM1JJWldGd1NXNWtaWGdnUFNCa2FYTjBTR1ZoY0M1c1pXNW5kR2dnTFNCcUlDMGdNVHRjYmx4dUlDQWdJQ0FnWTI5dWMzUWdkR1Z0Y0RFZ1BTQnBibVJJWldGd1d6QmRPMXh1SUNBZ0lDQWdhVzVrU0dWaGNGc3dYU0E5SUdsdVpFaGxZWEJiYVc1a1NHVmhjRWx1WkdWNFhUdGNiaUFnSUNBZ0lHbHVaRWhsWVhCYmFXNWtTR1ZoY0VsdVpHVjRYU0E5SUhSbGJYQXhPMXh1WEc0Z0lDQWdJQ0JqYjI1emRDQjBaVzF3TWlBOUlHUnBjM1JJWldGd1d6QmRPMXh1SUNBZ0lDQWdaR2x6ZEVobFlYQmJNRjBnUFNCa2FYTjBTR1ZoY0Z0a2FYTjBTR1ZoY0VsdVpHVjRYVHRjYmlBZ0lDQWdJR1JwYzNSSVpXRndXMlJwYzNSSVpXRndTVzVrWlhoZElEMGdkR1Z0Y0RJN1hHNWNiaUFnSUNBZ0lITnBablJFYjNkdUtHUnBjM1JJWldGd0xDQnBibVJJWldGd0xDQmthWE4wU0dWaGNFbHVaR1Y0TENBd0tUdGNiaUFnSUNCOVhHNGdJSDFjYmlBZ2NtVjBkWEp1SUh0cGJtUnBZMlZ6TENCM1pXbG5hSFJ6ZlR0Y2JuMWNibHh1THlvcVhHNGdLaUJTWlhOMGIzSmxJSFJvWlNCb1pXRndJSEJ5YjNCbGNuUjVJR1p2Y2lCaElHaGxZWEFnZDJsMGFDQmhiaUJ2ZFhRZ2IyWWdjR3hoWTJVZ1pXeGxiV1Z1ZEZ4dUlDb2dZWFFnY0c5emFYUnBiMjRnWUdCbGJIUmdZQzRnVkdocGN5QjNiM0pyY3lCM2FYUm9JR0VnYUdWaGNDQndZV2x5SUhkb1pYSmxJR2hsWVhBeElHTmhjbkpwWlhOY2JpQXFJSFJvWlNCM1pXbG5hSFJ6SUdGdVpDQm9aV0Z3TWlCb2IyeGtjeUIwYUdVZ1kyOXljbVZ6Y0c5dVpHbHVaeUJsYkdWdFpXNTBjeTVjYmlBcUwxeHVablZ1WTNScGIyNGdjMmxtZEVSdmQyNG9YRzRnSUdobFlYQXhPaUJ1ZFcxaVpYSmJYU3hjYmlBZ2FHVmhjREk2SUc1MWJXSmxjbHRkTEZ4dUlDQmpaV2xzYVc1bk9pQnVkVzFpWlhJc1hHNGdJR1ZzZERvZ2JuVnRZbVZ5WEc0cElIdGNiaUFnZDJocGJHVWdLR1ZzZENBcUlESWdLeUF4SUR3Z1kyVnBiR2x1WnlrZ2UxeHVJQ0FnSUdOdmJuTjBJR3hsWm5SRGFHbHNaQ0E5SUdWc2RDQXFJRElnS3lBeE8xeHVJQ0FnSUdOdmJuTjBJSEpwWjJoMFEyaHBiR1FnUFNCc1pXWjBRMmhwYkdRZ0t5QXhPMXh1SUNBZ0lHeGxkQ0J6ZDJGd0lEMGdaV3gwTzF4dVhHNGdJQ0FnYVdZZ0tHaGxZWEF4VzNOM1lYQmRJRHdnYUdWaGNERmJiR1ZtZEVOb2FXeGtYU2xjYmlBZ0lDQWdJSE4zWVhBZ1BTQnNaV1owUTJocGJHUTdYRzVjYmlBZ0lDQnBaaUFvY21sbmFIUkRhR2xzWkNBOElHTmxhV3hwYm1jZ0ppWWdhR1ZoY0RGYmMzZGhjRjBnUENCb1pXRndNVnR5YVdkb2RFTm9hV3hrWFNsY2JpQWdJQ0FnSUhOM1lYQWdQU0J5YVdkb2RFTm9hV3hrTzF4dVhHNWNiaUFnSUNCcFppQW9jM2RoY0NBOVBUMGdaV3gwS1NCN1hHNGdJQ0FnSUNCaWNtVmhhenRjYmlBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnZEdWdGNERWdQU0JvWldGd01WdGxiSFJkTzF4dUlDQWdJQ0FnYUdWaGNERmJaV3gwWFNBOUlHaGxZWEF4VzNOM1lYQmRPMXh1SUNBZ0lDQWdhR1ZoY0RGYmMzZGhjRjBnUFNCMFpXMXdNVHRjYmx4dUlDQWdJQ0FnWTI5dWMzUWdkR1Z0Y0RJZ1BTQm9aV0Z3TWx0bGJIUmRPMXh1SUNBZ0lDQWdhR1ZoY0RKYlpXeDBYU0E5SUdobFlYQXlXM04zWVhCZE8xeHVJQ0FnSUNBZ2FHVmhjREpiYzNkaGNGMGdQU0IwWlcxd01qdGNiaUFnSUNBZ0lHVnNkQ0E5SUhOM1lYQTdYRzRnSUNBZ2ZWeHVJQ0I5WEc1OVhHNWNiaThxS2x4dUlDb2dVMlZoY21Ob0lIUm9aU0JvWldGd0lHWnZjaUIwYUdVZ2MyMWhiR3hsYzNRZ1pXeGxiV1Z1ZENCMGFHRjBJR2x6SUhOMGFXeHNJR1pzWVdkblpXUXVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCemJXRnNiR1Z6ZEVac1lXZG5aV1FvYUdWaGNEb2dTR1ZoY0N3Z2NtOTNPaUJ1ZFcxaVpYSXBJSHRjYmlBZ1kyOXVjM1FnYVc1a0lEMGdhR1ZoY0Zzd1hWdHliM2RkTzF4dUlDQmpiMjV6ZENCa2FYTjBJRDBnYUdWaGNGc3hYVnR5YjNkZE8xeHVJQ0JqYjI1emRDQm1iR0ZuSUQwZ2FHVmhjRnN5WFZ0eWIzZGRPMXh1WEc0Z0lHeGxkQ0J0YVc1RWFYTjBJRDBnU1c1bWFXNXBkSGs3WEc0Z0lHeGxkQ0J5WlhOMWJIUkpibVJsZUNBOUlDMHhPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElENGdhVzVrTG14bGJtZDBhRHNnYVNzcktTQjdYRzRnSUNBZ2FXWWdLR1pzWVdkYmFWMGdQVDA5SURFZ0ppWWdaR2x6ZEZ0cFhTQThJRzFwYmtScGMzUXBJSHRjYmlBZ0lDQWdJRzFwYmtScGMzUWdQU0JrYVhOMFcybGRPMXh1SUNBZ0lDQWdjbVZ6ZFd4MFNXNWtaWGdnUFNCcE8xeHVJQ0FnSUgxY2JpQWdmVnh1WEc0Z0lHbG1JQ2h5WlhOMWJIUkpibVJsZUNBK1BTQXdLU0I3WEc0Z0lDQWdabXhoWjF0eVpYTjFiSFJKYm1SbGVGMGdQU0F3TzF4dUlDQWdJSEpsZEhWeWJpQk5ZWFJvTG1ac2IyOXlLR2x1WkZ0eVpYTjFiSFJKYm1SbGVGMHBPMXh1SUNCOUlHVnNjMlVnZTF4dUlDQWdJSEpsZEhWeWJpQXRNVHRjYmlBZ2ZWeHVmVnh1SWwxOSIsIi8qKlxuICogQGxpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgMjAxOSBHb29nbGUgTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICovXG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzJztcbi8qKlxuICogSW50ZXJuYWwgMi1kaW1lbnNpb25hbCBzcGFyc2UgbWF0cml4IGNsYXNzXG4gKi9cbmV4cG9ydCBjbGFzcyBTcGFyc2VNYXRyaXgge1xuICAgIGVudHJpZXMgPSBuZXcgTWFwKCk7XG4gICAgblJvd3MgPSAwO1xuICAgIG5Db2xzID0gMDtcbiAgICBjb25zdHJ1Y3Rvcihyb3dzLCBjb2xzLCB2YWx1ZXMsIGRpbXMpIHtcbiAgICAgICAgaWYgKHJvd3MubGVuZ3RoICE9PSBjb2xzLmxlbmd0aCB8fCByb3dzLmxlbmd0aCAhPT0gdmFsdWVzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyb3dzLCBjb2xzIGFuZCB2YWx1ZXMgYXJyYXlzIG11c3QgYWxsIGhhdmUgdGhlIHNhbWUgbGVuZ3RoJyk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gVE9ETzogQXNzZXJ0IHRoYXQgZGltcyBhcmUgbGVnaXQuXG4gICAgICAgIHRoaXMublJvd3MgPSBkaW1zWzBdO1xuICAgICAgICB0aGlzLm5Db2xzID0gZGltc1sxXTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHJvdyA9IHJvd3NbaV07XG4gICAgICAgICAgICBjb25zdCBjb2wgPSBjb2xzW2ldO1xuICAgICAgICAgICAgdGhpcy5jaGVja0RpbXMocm93LCBjb2wpO1xuICAgICAgICAgICAgY29uc3Qga2V5ID0gdGhpcy5tYWtlS2V5KHJvdywgY29sKTtcbiAgICAgICAgICAgIHRoaXMuZW50cmllcy5zZXQoa2V5LCB7IHZhbHVlOiB2YWx1ZXNbaV0sIHJvdywgY29sIH0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIG1ha2VLZXkocm93LCBjb2wpIHtcbiAgICAgICAgcmV0dXJuIGAke3Jvd306JHtjb2x9YDtcbiAgICB9XG4gICAgY2hlY2tEaW1zKHJvdywgY29sKSB7XG4gICAgICAgIGNvbnN0IHdpdGhpbkJvdW5kcyA9IHJvdyA8IHRoaXMublJvd3MgJiYgY29sIDwgdGhpcy5uQ29scztcbiAgICAgICAgaWYgKCF3aXRoaW5Cb3VuZHMpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3JvdyBhbmQvb3IgY29sIHNwZWNpZmllZCBvdXRzaWRlIG9mIG1hdHJpeCBkaW1lbnNpb25zJyk7XG4gICAgfVxuICAgIHNldChyb3csIGNvbCwgdmFsdWUpIHtcbiAgICAgICAgdGhpcy5jaGVja0RpbXMocm93LCBjb2wpO1xuICAgICAgICBjb25zdCBrZXkgPSB0aGlzLm1ha2VLZXkocm93LCBjb2wpO1xuICAgICAgICBpZiAoIXRoaXMuZW50cmllcy5oYXMoa2V5KSlcbiAgICAgICAgICAgIHRoaXMuZW50cmllcy5zZXQoa2V5LCB7IHZhbHVlLCByb3csIGNvbCB9KTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgdGhpcy5lbnRyaWVzLmdldChrZXkpLnZhbHVlID0gdmFsdWU7XG4gICAgfVxuICAgIGdldChyb3csIGNvbCwgZGVmYXVsdFZhbHVlID0gMCkge1xuICAgICAgICAvL3RoaXMuY2hlY2tEaW1zKHJvdywgY29sKTtcbiAgICAgICAgY29uc3Qga2V5ID0gdGhpcy5tYWtlS2V5KHJvdywgY29sKTtcbiAgICAgICAgaWYgKHRoaXMuZW50cmllcy5oYXMoa2V5KSlcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmVudHJpZXMuZ2V0KGtleSkudmFsdWU7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gICAgfVxuICAgIGdldEFsbChvcmRlcmVkID0gdHJ1ZSkge1xuICAgICAgICBjb25zdCByb3dDb2xWYWx1ZXMgPSBuZXcgQXJyYXkodGhpcy5lbnRyaWVzLnNpemUpLmZpbGwobnVsbCk7XG4gICAgICAgIGxldCBpID0gMDtcbiAgICAgICAgdGhpcy5lbnRyaWVzLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICByb3dDb2xWYWx1ZXNbaSsrXSA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKG9yZGVyZWQpIHtcbiAgICAgICAgICAgIC8vIE9yZGVyaW5nIHRoZSByZXN1bHQgaXNuJ3QgcmVxdWlyZWQgZm9yIHByb2Nlc3NpbmcgYnV0IGl0IGRvZXMgbWFrZSBpdCBlYXNpZXIgdG8gd3JpdGUgdGVzdHNcbiAgICAgICAgICAgIHJvd0NvbFZhbHVlcy5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGEucm93ID09PSBiLnJvdylcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEuY29sIC0gYi5jb2w7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYS5yb3cgLSBiLnJvdztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByb3dDb2xWYWx1ZXM7XG4gICAgfVxuICAgIGdldERpbXMoKSB7XG4gICAgICAgIHJldHVybiBbdGhpcy5uUm93cywgdGhpcy5uQ29sc107XG4gICAgfVxuICAgIGdldFJvd3MoKSB7XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZW50cmllcywgKFtfa2V5LCB2YWx1ZV0pID0+IHZhbHVlLnJvdyk7XG4gICAgICAgIC8vIHJldHVybiB0aGlzLnJvd3MgYXMgdW5rbm93biBhcyBudW1iZXJbXTtcbiAgICB9XG4gICAgZ2V0Q29scygpIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5lbnRyaWVzLCAoW19rZXksIHZhbHVlXSkgPT4gdmFsdWUuY29sKTtcbiAgICAgICAgLy8gcmV0dXJuIHRoaXMuY29scyBhcyB1bmtub3duIGFzIG51bWJlcltdO1xuICAgIH1cbiAgICBnZXRWYWx1ZXMoKSB7XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZW50cmllcywgKFtfa2V5LCB2YWx1ZV0pID0+IHZhbHVlLnZhbHVlKTtcbiAgICAgICAgLy9yZXR1cm4gdGhpcy52YWx1ZXMgYXMgdW5rbm93biBhcyBudW1iZXJbXTtcbiAgICB9XG4gICAgZm9yRWFjaChmbikge1xuICAgICAgICB0aGlzLmVudHJpZXMuZm9yRWFjaCgodmFsdWUpID0+IGZuKHZhbHVlLnZhbHVlLCB2YWx1ZS5yb3csIHZhbHVlLmNvbCkpO1xuICAgIH1cbiAgICBtYXAoZm4pIHtcbiAgICAgICAgY29uc3QgdmFscyA9IG5ldyBGbG9hdDMyQXJyYXkodGhpcy5lbnRyaWVzLnNpemUpO1xuICAgICAgICBsZXQgaSA9IDA7XG4gICAgICAgIHRoaXMuZW50cmllcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgdmFsc1tpKytdID0gZm4odmFsdWUudmFsdWUsIHZhbHVlLnJvdywgdmFsdWUuY29sKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGRpbXMgPSBbdGhpcy5uUm93cywgdGhpcy5uQ29sc107XG4gICAgICAgIHJldHVybiBuZXcgU3BhcnNlTWF0cml4KHRoaXMuZ2V0Um93cygpLCB0aGlzLmdldENvbHMoKSwgdmFscywgZGltcyk7XG4gICAgfVxuICAgIHRvQXJyYXkoKSB7XG4gICAgICAgIGNvbnN0IHJvd3MgPSB1dGlscy5lbXB0eSh0aGlzLm5Sb3dzKTtcbiAgICAgICAgY29uc3Qgb3V0cHV0ID0gcm93cy5tYXAoKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHV0aWxzLnplcm9zKHRoaXMubkNvbHMpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5lbnRyaWVzLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBvdXRwdXRbdmFsdWUucm93XVt2YWx1ZS5jb2xdID0gdmFsdWUudmFsdWU7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gb3V0cHV0O1xuICAgIH1cbn1cbi8qKlxuICogVHJhbnNwb3NlIGEgc3BhcnNlIG1hdHJpeFxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNwb3NlKG1hdHJpeCkge1xuICAgIGNvbnN0IG9sZFJvd3MgPSBtYXRyaXguZ2V0Um93cygpO1xuICAgIGNvbnN0IG9sZENvbHMgPSBtYXRyaXguZ2V0Q29scygpO1xuICAgIGNvbnN0IG9sZFZhbHMgPSBtYXRyaXguZ2V0VmFsdWVzKCk7XG4gICAgY29uc3QgbWF0bGVuID0gb2xkQ29scy5sZW5ndGg7XG4gICAgY29uc3QgY29scyA9IG5ldyBJbnQzMkFycmF5KG1hdGxlbik7XG4gICAgY29uc3Qgcm93cyA9IG5ldyBJbnQzMkFycmF5KG1hdGxlbik7XG4gICAgY29uc3QgdmFscyA9IG5ldyBGbG9hdDMyQXJyYXkobWF0bGVuKTtcbiAgICBjb2xzLnNldChvbGRSb3dzKTtcbiAgICByb3dzLnNldChvbGRDb2xzKTtcbiAgICB2YWxzLnNldChvbGRWYWxzKTtcbiAgICBjb25zdCBkaW1zID0gW21hdHJpeC5uQ29scywgbWF0cml4Lm5Sb3dzXTtcbiAgICByZXR1cm4gbmV3IFNwYXJzZU1hdHJpeChyb3dzLCBjb2xzLCB2YWxzLCBkaW1zKTtcbn1cbi8qKlxuICogQ29uc3RydWN0IGEgc3BhcnNlIGlkZW50aXR5IG1hdHJpeFxuICovXG5leHBvcnQgZnVuY3Rpb24gaWRlbnRpdHkoc2l6ZSkge1xuICAgIGNvbnN0IFtyb3dzXSA9IHNpemU7XG4gICAgY29uc3QgbWF0cml4ID0gbmV3IFNwYXJzZU1hdHJpeChbXSwgW10sIFtdLCBzaXplKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvd3M7IGkrKylcbiAgICAgICAgbWF0cml4LnNldChpLCBpLCAxKTtcbiAgICByZXR1cm4gbWF0cml4O1xufVxuLyoqXG4gKiBFbGVtZW50LXdpc2UgbXVsdGlwbGljYXRpb24gb2YgdHdvIG1hdHJpY2VzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYWlyd2lzZU11bHRpcGx5KGEsIGIpIHtcbiAgICByZXR1cm4gZWxlbWVudFdpc2UoYSwgYiwgKHgsIHkpID0+IHggKiB5KTtcbn1cbi8qKlxuICogRWxlbWVudC13aXNlIGFkZGl0aW9uIG9mIHR3byBtYXRyaWNlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gYWRkKGEsIGIpIHtcbiAgICByZXR1cm4gZWxlbWVudFdpc2UoYSwgYiwgKHgsIHkpID0+IHggKyB5KTtcbn1cbi8qKlxuICogRWxlbWVudC13aXNlIHN1YnRyYWN0aW9uIG9mIHR3byBtYXRyaWNlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gc3VidHJhY3QoYSwgYikge1xuICAgIHJldHVybiBlbGVtZW50V2lzZShhLCBiLCAoeCwgeSkgPT4geCAtIHkpO1xufVxuLyoqXG4gKiBFbGVtZW50LXdpc2UgbWF4aW11bSBvZiB0d28gbWF0cmljZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1heGltdW0oYSwgYikge1xuICAgIHJldHVybiBlbGVtZW50V2lzZShhLCBiLCAoeCwgeSkgPT4gKHggPiB5ID8geCA6IHkpKTtcbn1cbi8qKlxuICogU2NhbGFyIG11bHRpcGxpY2F0aW9uIG9mIHR3byBtYXRyaWNlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbXVsdGlwbHlTY2FsYXIoYSwgc2NhbGFyKSB7XG4gICAgcmV0dXJuIGEubWFwKCh2YWx1ZSkgPT4ge1xuICAgICAgICByZXR1cm4gdmFsdWUgKiBzY2FsYXI7XG4gICAgfSk7XG59XG4vKipcbiAqIFJldHVybnMgYSBuZXcgbWF0cml4IHdpdGggemVybyBlbnRyaWVzIHJlbW92ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbGltaW5hdGVaZXJvcyhtKSB7XG4gICAgY29uc3QgemVyb0luZGljZXMgPSBuZXcgU2V0KCk7XG4gICAgY29uc3QgdmFsdWVzID0gbS5nZXRWYWx1ZXMoKTtcbiAgICBjb25zdCByb3dzID0gbS5nZXRSb3dzKCk7XG4gICAgY29uc3QgY29scyA9IG0uZ2V0Q29scygpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmICh2YWx1ZXNbaV0gPT09IDApXG4gICAgICAgICAgICB6ZXJvSW5kaWNlcy5hZGQoaSk7XG4gICAgfVxuICAgIGNvbnN0IHJlbW92ZUJ5WmVyb0luZGV4ID0gKF8sIGluZGV4KSA9PiAhemVyb0luZGljZXMuaGFzKGluZGV4KTtcbiAgICBjb25zdCBuZXh0VmFsdWVzID0gdmFsdWVzLmZpbHRlcihyZW1vdmVCeVplcm9JbmRleCk7XG4gICAgY29uc3QgbmV4dFJvd3MgPSByb3dzLmZpbHRlcihyZW1vdmVCeVplcm9JbmRleCk7XG4gICAgY29uc3QgbmV4dENvbHMgPSBjb2xzLmZpbHRlcihyZW1vdmVCeVplcm9JbmRleCk7XG4gICAgcmV0dXJuIG5ldyBTcGFyc2VNYXRyaXgobmV4dFJvd3MsIG5leHRDb2xzLCBuZXh0VmFsdWVzLCBtLmdldERpbXMoKSk7XG59XG4vKipcbiAqIE5vcm1hbGl6YXRpb24gb2YgYSBzcGFyc2UgbWF0cml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplKG0sIG5vcm1UeXBlID0gXCJsMlwiIC8qIE5vcm1UeXBlLmwyICovKSB7XG4gICAgY29uc3Qgbm9ybUZuID0gbm9ybUZuc1tub3JtVHlwZV07XG4gICAgY29uc3QgY29sc0J5Um93ID0gbmV3IE1hcCgpO1xuICAgIG0uZm9yRWFjaCgoXywgcm93LCBjb2wpID0+IHtcbiAgICAgICAgY29uc3QgY29scyA9IGNvbHNCeVJvdy5nZXQocm93KSB8fCBbXTtcbiAgICAgICAgY29scy5wdXNoKGNvbCk7XG4gICAgICAgIGNvbHNCeVJvdy5zZXQocm93LCBjb2xzKTtcbiAgICB9KTtcbiAgICBjb25zdCBuZXh0TWF0cml4ID0gbmV3IFNwYXJzZU1hdHJpeChbXSwgW10sIFtdLCBtLmdldERpbXMoKSk7XG4gICAgZm9yIChjb25zdCByb3cgb2YgY29sc0J5Um93LmtleXMoKSkge1xuICAgICAgICBjb25zdCBjb2xzID0gY29sc0J5Um93LmdldChyb3cpLnNvcnQoKTtcbiAgICAgICAgY29uc3QgdmFscyA9IGNvbHMubWFwKChjb2wpID0+IG0uZ2V0KHJvdywgY29sKSk7XG4gICAgICAgIGNvbnN0IG5vcm0gPSBub3JtRm4odmFscyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbm9ybS5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIG5leHRNYXRyaXguc2V0KHJvdywgY29sc1tpXSwgbm9ybVtpXSk7XG4gICAgfVxuICAgIHJldHVybiBuZXh0TWF0cml4O1xufVxuY29uc3Qgbm9ybUZucyA9IHtcbiAgICBbXCJtYXhcIiAvKiBOb3JtVHlwZS5tYXggKi9dOiAoeHMpID0+IHtcbiAgICAgICAgbGV0IG1heCA9IC1JbmZpbml0eTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB4cy5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIG1heCA9IHhzW2ldID4gbWF4ID8geHNbaV0gOiBtYXg7XG4gICAgICAgIHJldHVybiB4cy5tYXAoKHgpID0+IHggLyBtYXgpO1xuICAgIH0sXG4gICAgW1wibDFcIiAvKiBOb3JtVHlwZS5sMSAqL106ICh4cykgPT4ge1xuICAgICAgICBsZXQgc3VtID0gMDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB4cy5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIHN1bSArPSB4c1tpXTtcbiAgICAgICAgcmV0dXJuIHhzLm1hcCgoeCkgPT4geCAvIHN1bSk7XG4gICAgfSxcbiAgICBbXCJsMlwiIC8qIE5vcm1UeXBlLmwyICovXTogKHhzKSA9PiB7XG4gICAgICAgIGxldCBzdW0gPSAwO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHhzLmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgc3VtICs9IHhzW2ldICoqIDI7XG4gICAgICAgIHJldHVybiB4cy5tYXAoKHgpID0+IE1hdGguc3FydCh4ICoqIDIgLyBzdW0pKTtcbiAgICB9LFxufTtcbi8qKlxuICogSGVscGVyIGZ1bmN0aW9uIGZvciBlbGVtZW50LXdpc2Ugb3BlcmF0aW9ucy5cbiAqL1xuZnVuY3Rpb24gZWxlbWVudFdpc2UoYSwgYiwgb3ApIHtcbiAgICBjb25zdCB2aXNpdGVkID0gbmV3IFNldCgpO1xuICAgIGNvbnN0IHJvd3MgPSBbXTtcbiAgICBjb25zdCBjb2xzID0gW107XG4gICAgY29uc3QgdmFscyA9IFtdO1xuICAgIGNvbnN0IG9wZXJhdGUgPSAocm93LCBjb2wpID0+IHtcbiAgICAgICAgcm93cy5wdXNoKHJvdyk7XG4gICAgICAgIGNvbHMucHVzaChjb2wpO1xuICAgICAgICBjb25zdCBuZXh0VmFsdWUgPSBvcChhLmdldChyb3csIGNvbCksIGIuZ2V0KHJvdywgY29sKSk7XG4gICAgICAgIHZhbHMucHVzaChuZXh0VmFsdWUpO1xuICAgIH07XG4gICAgY29uc3QgdmFsdWVzQSA9IGEuZ2V0VmFsdWVzKCk7XG4gICAgY29uc3Qgcm93c0EgPSBhLmdldFJvd3MoKTtcbiAgICBjb25zdCBjb2xzQSA9IGEuZ2V0Q29scygpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWVzQS5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCByb3cgPSByb3dzQVtpXTtcbiAgICAgICAgY29uc3QgY29sID0gY29sc0FbaV07XG4gICAgICAgIGNvbnN0IGtleSA9IGAke3Jvd306JHtjb2x9YDtcbiAgICAgICAgdmlzaXRlZC5hZGQoa2V5KTtcbiAgICAgICAgb3BlcmF0ZShyb3csIGNvbCk7XG4gICAgfVxuICAgIGNvbnN0IHZhbHVlc0IgPSBiLmdldFZhbHVlcygpO1xuICAgIGNvbnN0IHJvd3NCID0gYi5nZXRSb3dzKCk7XG4gICAgY29uc3QgY29sc0IgPSBiLmdldENvbHMoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbHVlc0IubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3Qgcm93ID0gcm93c0JbaV07XG4gICAgICAgIGNvbnN0IGNvbCA9IGNvbHNCW2ldO1xuICAgICAgICBjb25zdCBrZXkgPSBgJHtyb3d9OiR7Y29sfWA7XG4gICAgICAgIGlmICh2aXNpdGVkLmhhcyhrZXkpKVxuICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgIG9wZXJhdGUocm93LCBjb2wpO1xuICAgIH1cbiAgICBjb25zdCBkaW1zID0gW2EublJvd3MsIGEubkNvbHNdO1xuICAgIHJldHVybiBuZXcgU3BhcnNlTWF0cml4KHJvd3MsIGNvbHMsIHZhbHMsIGRpbXMpO1xufVxuLyoqXG4gKiBIZWxwZXIgZnVuY3Rpb24gZm9yIGdldHRpbmcgZGF0YSwgaW5kaWNlcywgYW5kIGlucHRyIGFycmF5cyBmcm9tIGEgc3BhcnNlXG4gKiBtYXRyaXggdG8gZm9sbG93IGNzciBtYXRyaXggY29udmVudGlvbnMuIFN1cGVyIGluZWZmaWNpZW50IChhbmQga2luZCBvZlxuICogZGVmZWF0cyB0aGUgcHVycG9zZSBvZiB0aGlzIGNvbnZlbnRpb24pIGJ1dCBhIGxvdCBvZiB0aGUgcG9ydGVkIHB5dGhvbiB0cmVlXG4gKiBzZWFyY2ggbG9naWMgZGVwZW5kcyBvbiB0aGlzIGRhdGEgZm9ybWF0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q1NSKHgpIHtcbiAgICBjb25zdCBlbnRyaWVzID0gW107XG4gICAgeC5mb3JFYWNoKCh2YWx1ZSwgcm93LCBjb2wpID0+IHtcbiAgICAgICAgZW50cmllcy5wdXNoKHsgdmFsdWUsIHJvdywgY29sIH0pO1xuICAgIH0pO1xuICAgIGVudHJpZXMuc29ydCgoYSwgYikgPT4ge1xuICAgICAgICBpZiAoYS5yb3cgPT09IGIucm93KVxuICAgICAgICAgICAgcmV0dXJuIGEuY29sIC0gYi5jb2w7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiBhLnJvdyAtIGIucm93O1xuICAgIH0pO1xuICAgIGNvbnN0IGluZGljZXMgPSBbXTtcbiAgICBjb25zdCB2YWx1ZXMgPSBbXTtcbiAgICBjb25zdCBpbmRwdHIgPSBbXTtcbiAgICBsZXQgY3VycmVudFJvdyA9IC0xO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZW50cmllcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCB7IHJvdywgY29sLCB2YWx1ZSB9ID0gZW50cmllc1tpXTtcbiAgICAgICAgaWYgKHJvdyAhPT0gY3VycmVudFJvdykge1xuICAgICAgICAgICAgY3VycmVudFJvdyA9IHJvdztcbiAgICAgICAgICAgIGluZHB0ci5wdXNoKGkpO1xuICAgICAgICB9XG4gICAgICAgIGluZGljZXMucHVzaChjb2wpO1xuICAgICAgICB2YWx1ZXMucHVzaCh2YWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiB7IGluZGljZXMsIHZhbHVlcywgaW5kcHRyIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2liV0YwY21sNExtcHpJaXdpYzI5MWNtTmxVbTl2ZENJNklpSXNJbk52ZFhKalpYTWlPbHNpYldGMGNtbDRMblJ6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQk96czdPenM3T3pzN096czdPenM3T3p0SFFXbENSenRCUVVWSUxFOUJRVThzUzBGQlN5eExRVUZMTEUxQlFVMHNVMEZCVXl4RFFVRkRPMEZCU1dwRE96dEhRVVZITzBGQlEwZ3NUVUZCVFN4UFFVRlBMRmxCUVZrN1NVRkRaaXhQUVVGUExFZEJRVWNzU1VGQlNTeEhRVUZITEVWQlFXbENMRU5CUVVNN1NVRkZiRU1zUzBGQlN5eEhRVUZYTEVOQlFVTXNRMEZCUXp0SlFVTnNRaXhMUVVGTExFZEJRVmNzUTBGQlF5eERRVUZETzBsQlJUTkNMRmxCUTBVc1NVRkJNa0lzUlVGRE0wSXNTVUZCTWtJc1JVRkRNMElzVFVGQkswSXNSVUZETDBJc1NVRkJZenRSUVVWa0xFbEJRVWtzU1VGQlNTeERRVUZETEUxQlFVMHNTMEZCU3l4SlFVRkpMRU5CUVVNc1RVRkJUU3hKUVVGSkxFbEJRVWtzUTBGQlF5eE5RVUZOTEV0QlFVc3NUVUZCVFN4RFFVRkRMRTFCUVUwc1JVRkJSVHRaUVVOb1JTeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVTmlMRFJFUVVFMFJDeERRVU0zUkN4RFFVRkRPMU5CUTBnN1VVRkZSQ3h2UTBGQmIwTTdVVUZEY0VNc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRja0lzU1VGQlNTeERRVUZETEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGNrSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3V1VGRGRFTXNUVUZCVFN4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEzQkNMRTFCUVUwc1IwRkJSeXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTndRaXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEVkQlFVY3NSVUZCUlN4SFFVRkhMRU5CUVVNc1EwRkJRenRaUVVONlFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXp0WlFVTnVReXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJReXhMUVVGTExFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRWRCUVVjc1JVRkJSU3hIUVVGSExFVkJRVU1zUTBGQlF5eERRVUZETzFOQlEzSkVPMGxCUTBnc1EwRkJRenRKUVVWUExFOUJRVThzUTBGQlF5eEhRVUZYTEVWQlFVVXNSMEZCVnp0UlFVTjBReXhQUVVGUExFZEJRVWNzUjBGQlJ5eEpRVUZKTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTNwQ0xFTkJRVU03U1VGRlR5eFRRVUZUTEVOQlFVTXNSMEZCVnl4RlFVRkZMRWRCUVZjN1VVRkRlRU1zVFVGQlRTeFpRVUZaTEVkQlFVY3NSMEZCUnl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFbEJRVWtzUjBGQlJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNN1VVRkRNVVFzU1VGQlNTeERRVUZETEZsQlFWazdXVUZEWml4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExIVkVRVUYxUkN4RFFVRkRMRU5CUVVNN1NVRkROMFVzUTBGQlF6dEpRVVZFTEVkQlFVY3NRMEZCUXl4SFFVRlhMRVZCUVVVc1IwRkJWeXhGUVVGRkxFdEJRV0U3VVVGRGVrTXNTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhIUVVGSExFVkJRVVVzUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEZWtJc1RVRkJUU3hIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGJrTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXp0WlFVTjRRaXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJReXhMUVVGTExFVkJRVVVzUjBGQlJ5eEZRVUZGTEVkQlFVY3NSVUZCUXl4RFFVRkRMRU5CUVVNN08xbEJSWHBETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlJTeERRVUZETEV0QlFVc3NSMEZCUnl4TFFVRkxMRU5CUVVNN1NVRkRla01zUTBGQlF6dEpRVVZFTEVkQlFVY3NRMEZCUXl4SFFVRlhMRVZCUVVVc1IwRkJWeXhGUVVGRkxGbEJRVmtzUjBGQlJ5eERRVUZETzFGQlF6VkRMREpDUVVFeVFqdFJRVU16UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NSVUZCUlN4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOdVF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF6dFpRVU4yUWl4UFFVRlBMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUlN4RFFVRkRMRXRCUVVzc1EwRkJRenM3V1VGRmNFTXNUMEZCVHl4WlFVRlpMRU5CUVVNN1NVRkRlRUlzUTBGQlF6dEpRVVZFTEUxQlFVMHNRMEZCUXl4UFFVRlBMRWRCUVVjc1NVRkJTVHRSUVVOdVFpeE5RVUZOTEZsQlFWa3NSMEZCV1N4SlFVRkpMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dFJRVU4wUlN4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRFZpeEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFdEJRVXNzUlVGQlJTeEZRVUZGTzFsQlF6ZENMRmxCUVZrc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXp0UlFVTTFRaXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5JTEVsQlFVa3NUMEZCVHl4RlFVRkZPMWxCUTFnc09FWkJRVGhHTzFsQlF6bEdMRmxCUVZrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1owSkJRM3BDTEVsQlFVa3NRMEZCUXl4RFFVRkRMRWRCUVVjc1MwRkJTeXhEUVVGRExFTkJRVU1zUjBGQlJ6dHZRa0ZEYWtJc1QwRkJUeXhEUVVGRExFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNN08yOUNRVVZ5UWl4UFFVRlBMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXp0WlFVTjZRaXhEUVVGRExFTkJRVU1zUTBGQlF6dFRRVU5LTzFGQlEwUXNUMEZCVHl4WlFVRlpMRU5CUVVNN1NVRkRkRUlzUTBGQlF6dEpRVVZFTEU5QlFVODdVVUZEVEN4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1NVRkRiRU1zUTBGQlF6dEpRVVZFTEU5QlFVODdVVUZEVEN4UFFVRlBMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRMRU5CUVVNc1NVRkJTU3hGUVVGRkxFdEJRVXNzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRE9VUXNNa05CUVRKRE8wbEJRemRETEVOQlFVTTdTVUZGUkN4UFFVRlBPMUZCUTB3c1QwRkJUeXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRVZCUVVVc1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFGQlF6bEVMREpEUVVFeVF6dEpRVU0zUXl4RFFVRkRPMGxCUlVRc1UwRkJVenRSUVVOUUxFOUJRVThzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVWQlFVVXNTMEZCU3l4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVTnNSU3cwUTBGQk5FTTdTVUZETlVNc1EwRkJRenRKUVVWRUxFOUJRVThzUTBGQlF5eEZRVUZ4UkR0UlFVTXpSQ3hKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEV0QlFVc3NRMEZCUXl4TFFVRkxMRVZCUVVVc1MwRkJTeXhEUVVGRExFZEJRVWNzUlVGQlJTeExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVONlJTeERRVUZETzBsQlJVUXNSMEZCUnl4RFFVRkRMRVZCUVhWRU8xRkJRM3BFTEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN1VVRkRha1FzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTFZc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4TFFVRkxMRVZCUVVVc1JVRkJSVHRaUVVNM1FpeEpRVUZKTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NSVUZCUlN4TFFVRkxMRU5CUVVNc1IwRkJSeXhGUVVGRkxFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTndSQ3hEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5JTEUxQlFVMHNTVUZCU1N4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRkRU1zVDBGQlR5eEpRVUZKTEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVVzU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4RlFVRkZMRWxCUVRKQ0xFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdTVUZETjBZc1EwRkJRenRKUVVWRUxFOUJRVTg3VVVGRFRDeE5RVUZOTEVsQlFVa3NSMEZCWjBJc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkRiRVFzVFVGQlRTeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFVkJRVVU3V1VGRE0wSXNUMEZCVHl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVTnFReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5JTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUzBGQlN5eEZRVUZGTEVWQlFVVTdXVUZETjBJc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXp0UlFVTTNReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5JTEU5QlFVOHNUVUZCVFN4RFFVRkRPMGxCUTJoQ0xFTkJRVU03UTBGRFJqdEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxGTkJRVk1zUTBGQlF5eE5RVUZ2UWp0SlFVTTFReXhOUVVGTkxFOUJRVThzUjBGQlJ5eE5RVUZOTEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNN1NVRkRha01zVFVGQlRTeFBRVUZQTEVkQlFVY3NUVUZCVFN4RFFVRkRMRTlCUVU4c1JVRkJSU3hEUVVGRE8wbEJRMnBETEUxQlFVMHNUMEZCVHl4SFFVRkhMRTFCUVUwc1EwRkJReXhUUVVGVExFVkJRVVVzUTBGQlF6dEpRVU51UXl4TlFVRk5MRTFCUVUwc1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETzBsQlF6bENMRTFCUVUwc1NVRkJTU3hIUVVGSExFbEJRVWtzVlVGQlZTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMGxCUTNCRExFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NWVUZCVlN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wbEJRM0JETEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1dVRkJXU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBsQlJYUkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEYkVJc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVTnNRaXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRPMGxCUTJ4Q0xFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1JVRkJSU3hOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdTVUZETVVNc1QwRkJUeXhKUVVGSkxGbEJRVmtzUTBGQlF5eEpRVUZKTEVWQlFVVXNTVUZCU1N4RlFVRkZMRWxCUVVrc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF6dEJRVU5zUkN4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNVVUZCVVN4RFFVRkRMRWxCUVdNN1NVRkRja01zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJRenRKUVVOd1FpeE5RVUZOTEUxQlFVMHNSMEZCUnl4SlFVRkpMRmxCUVZrc1EwRkJReXhGUVVGRkxFVkJRVVVzUlVGQlJTeEZRVUZGTEVWQlFVVXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRKUVVOc1JDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzU1VGQlNTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTXpRaXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmRFSXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHZENRVUZuUWl4RFFVTTVRaXhEUVVGbExFVkJRMllzUTBGQlpUdEpRVVZtTEU5QlFVOHNWMEZCVnl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETlVNc1EwRkJRenRCUVVWRU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4VlFVRlZMRWRCUVVjc1EwRkJReXhEUVVGbExFVkJRVVVzUTBGQlpUdEpRVU5zUkN4UFFVRlBMRmRCUVZjc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXpWRExFTkJRVU03UVVGRlJEczdSMEZGUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hSUVVGUkxFTkJRVU1zUTBGQlpTeEZRVUZGTEVOQlFXVTdTVUZEZGtRc1QwRkJUeXhYUVVGWExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVNMVF5eERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVDBGQlR5eERRVUZETEVOQlFXVXNSVUZCUlN4RFFVRmxPMGxCUTNSRUxFOUJRVThzVjBGQlZ5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4wUkN4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNZMEZCWXl4RFFVRkRMRU5CUVdVc1JVRkJSU3hOUVVGak8wbEJRelZFTEU5QlFVOHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFdEJRV0VzUlVGQlJTeEZRVUZGTzFGQlF6ZENMRTlCUVU4c1MwRkJTeXhIUVVGSExFMUJRVTBzUTBGQlF6dEpRVU40UWl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOTUxFTkJRVU03UVVGRlJEczdSMEZGUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hqUVVGakxFTkJRVU1zUTBGQlpUdEpRVU0xUXl4TlFVRk5MRmRCUVZjc1IwRkJSeXhKUVVGSkxFZEJRVWNzUlVGQlJTeERRVUZETzBsQlF6bENMRTFCUVUwc1RVRkJUU3hIUVVGSExFTkJRVU1zUTBGQlF5eFRRVUZUTEVWQlFVVXNRMEZCUXp0SlFVTTNRaXhOUVVGTkxFbEJRVWtzUjBGQlJ5eERRVUZETEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNN1NVRkRla0lzVFVGQlRTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRMRTlCUVU4c1JVRkJSU3hEUVVGRE8wbEJRM3BDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xRkJRM1JETEVsQlFVa3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhMUVVGTExFTkJRVU03V1VGRGFrSXNWMEZCVnl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dExRVU4wUWp0SlFVTkVMRTFCUVUwc2FVSkJRV2xDTEVkQlFVY3NRMEZCUXl4RFFVRk5MRVZCUVVVc1MwRkJZU3hGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEZkQlFWY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03U1VGRE4wVXNUVUZCVFN4VlFVRlZMRWRCUVVjc1RVRkJUU3hEUVVGRExFMUJRVTBzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhEUVVGRE8wbEJRM0JFTEUxQlFVMHNVVUZCVVN4SFFVRkhMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zYVVKQlFXbENMRU5CUVVNc1EwRkJRenRKUVVOb1JDeE5RVUZOTEZGQlFWRXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExHbENRVUZwUWl4RFFVRkRMRU5CUVVNN1NVRkZhRVFzVDBGQlR5eEpRVUZKTEZsQlFWa3NRMEZCUXl4UlFVRlJMRVZCUVVVc1VVRkJVU3hGUVVGRkxGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNc1EwRkJRenRCUVVOMlJTeERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVTBGQlV5eERRVUZETEVOQlFXVXNSVUZCUlN4UlFVRlJMSGxDUVVGak8wbEJReTlFTEUxQlFVMHNUVUZCVFN4SFFVRkhMRTlCUVU4c1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dEpRVVZxUXl4TlFVRk5MRk5CUVZNc1IwRkJSeXhKUVVGSkxFZEJRVWNzUlVGQmIwSXNRMEZCUXp0SlFVTTVReXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRWRCUVVjc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJUdFJRVU40UWl4TlFVRk5MRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJRenRSUVVOMFF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRMllzVTBGQlV5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU03U1VGRE0wSXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkZTQ3hOUVVGTkxGVkJRVlVzUjBGQlJ5eEpRVUZKTEZsQlFWa3NRMEZCUXl4RlFVRkZMRVZCUVVVc1JVRkJSU3hGUVVGRkxFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNc1EwRkJRenRKUVVVM1JDeExRVUZMTEUxQlFVMHNSMEZCUnl4SlFVRkpMRk5CUVZNc1EwRkJReXhKUVVGSkxFVkJRVVVzUlVGQlJUdFJRVU5zUXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUlN4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8xRkJSWGhETEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRhRVFzVFVGQlRTeEpRVUZKTEVkQlFVY3NUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8xRkJRekZDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSVHRaUVVOc1F5eFZRVUZWTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UzBGRGVrTTdTVUZGUkN4UFFVRlBMRlZCUVZVc1EwRkJRenRCUVVOd1FpeERRVUZETzBGQlRVUXNUVUZCVFN4UFFVRlBMRWRCUVZrN1NVRkRka0lzTUVKQlFXTXNSVUZCUlN4RFFVRkRMRVZCUVZrc1JVRkJSU3hGUVVGRk8xRkJReTlDTEVsQlFVa3NSMEZCUnl4SFFVRkhMRU5CUVVNc1VVRkJVU3hEUVVGRE8xRkJRM0JDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSVHRaUVVOb1F5eEhRVUZITEVkQlFVY3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTTdVVUZGYkVNc1QwRkJUeXhGUVVGRkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZEYUVNc1EwRkJRenRKUVVORUxIZENRVUZoTEVWQlFVVXNRMEZCUXl4RlFVRlpMRVZCUVVVc1JVRkJSVHRSUVVNNVFpeEpRVUZKTEVkQlFVY3NSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRXaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1JVRkJSU3hEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVTdXVUZEYUVNc1IwRkJSeXhKUVVGSkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVVm1MRTlCUVU4c1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlEyaERMRU5CUVVNN1NVRkRSQ3gzUWtGQllTeEZRVUZGTEVOQlFVTXNSVUZCV1N4RlFVRkZMRVZCUVVVN1VVRkRPVUlzU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTFvc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTzFsQlEyaERMRWRCUVVjc1NVRkJTU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUlhCQ0xFOUJRVThzUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEYUVRc1EwRkJRenREUVVOR0xFTkJRVU03UVVGUlJqczdSMEZGUnp0QlFVTklMRk5CUVZNc1YwRkJWeXhEUVVOc1FpeERRVUZsTEVWQlEyWXNRMEZCWlN4RlFVTm1MRVZCUVc5RE8wbEJSWEJETEUxQlFVMHNUMEZCVHl4SFFVRkhMRWxCUVVrc1IwRkJSeXhGUVVGVkxFTkJRVU03U1VGRGJFTXNUVUZCVFN4SlFVRkpMRWRCUVdFc1JVRkJSU3hEUVVGRE8wbEJRekZDTEUxQlFVMHNTVUZCU1N4SFFVRmhMRVZCUVVVc1EwRkJRenRKUVVNeFFpeE5RVUZOTEVsQlFVa3NSMEZCWVN4RlFVRkZMRU5CUVVNN1NVRkZNVUlzVFVGQlRTeFBRVUZQTEVkQlFVY3NRMEZCUXl4SFFVRlhMRVZCUVVVc1IwRkJWeXhGUVVGRkxFVkJRVVU3VVVGRE0wTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5tTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRFppeE5RVUZOTEZOQlFWTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOMlJDeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRE8wbEJRM1pDTEVOQlFVTXNRMEZCUXp0SlFVTkdMRTFCUVUwc1QwRkJUeXhIUVVGSExFTkJRVU1zUTBGQlF5eFRRVUZUTEVWQlFVVXNRMEZCUXp0SlFVTTVRaXhOUVVGTkxFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNN1NVRkRNVUlzVFVGQlRTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRkRMRTlCUVU4c1JVRkJSU3hEUVVGRE8wbEJRekZDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xRkJRM1pETEUxQlFVMHNSMEZCUnl4SFFVRkhMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU55UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEY2tJc1RVRkJUU3hIUVVGSExFZEJRVWNzUjBGQlJ5eEhRVUZITEVsQlFVa3NSMEZCUnl4RlFVRkZMRU5CUVVNN1VVRkROVUlzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOcVFpeFBRVUZQTEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRE8wdEJRMjVDTzBsQlJVUXNUVUZCVFN4UFFVRlBMRWRCUVVjc1EwRkJReXhEUVVGRExGTkJRVk1zUlVGQlJTeERRVUZETzBsQlF6bENMRTFCUVUwc1MwRkJTeXhIUVVGSExFTkJRVU1zUTBGQlF5eFBRVUZQTEVWQlFVVXNRMEZCUXp0SlFVTXhRaXhOUVVGTkxFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNN1NVRkRNVUlzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFOUJRVThzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1VVRkRka01zVFVGQlRTeEhRVUZITEVkQlFVY3NTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRM0pDTEUxQlFVMHNSMEZCUnl4SFFVRkhMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU55UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzU1VGQlNTeEhRVUZITEVWQlFVVXNRMEZCUXp0UlFVTTFRaXhKUVVGSkxFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRPMWxCUVVVc1UwRkJVenRSUVVNdlFpeFBRVUZQTEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRE8wdEJRMjVDTzBsQlJVUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUzBGQlN5eEZRVUZGTEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRKUVVOb1F5eFBRVUZQTEVsQlFVa3NXVUZCV1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTJ4RUxFTkJRVU03UVVGRlJEczdPenM3UjBGTFJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4TlFVRk5MRU5CUVVNc1EwRkJaVHRKUVVOd1F5eE5RVUZOTEU5QlFVOHNSMEZCV1N4RlFVRkZMRU5CUVVNN1NVRkZOVUlzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRXRCUVVzc1JVRkJSU3hIUVVGSExFVkJRVVVzUjBGQlJ5eEZRVUZGTEVWQlFVVTdVVUZETlVJc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZETEV0QlFVc3NSVUZCUlN4SFFVRkhMRVZCUVVVc1IwRkJSeXhGUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5zUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVWSUxFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3VVVGRGNFSXNTVUZCU1N4RFFVRkRMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zUTBGQlF5eEhRVUZITzFsQlEycENMRTlCUVU4c1EwRkJReXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRPenRaUVVWeVFpeFBRVUZQTEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF6dEpRVU42UWl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVWSUxFMUJRVTBzVDBGQlR5eEhRVUZoTEVWQlFVVXNRMEZCUXp0SlFVTTNRaXhOUVVGTkxFMUJRVTBzUjBGQllTeEZRVUZGTEVOQlFVTTdTVUZETlVJc1RVRkJUU3hOUVVGTkxFZEJRV0VzUlVGQlJTeERRVUZETzBsQlJUVkNMRWxCUVVrc1ZVRkJWU3hIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzQkNMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFGQlEzWkRMRTFCUVUwc1JVRkJReXhIUVVGSExFVkJRVVVzUjBGQlJ5eEZRVUZGTEV0QlFVc3NSVUZCUXl4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU55UXl4SlFVRkpMRWRCUVVjc1MwRkJTeXhWUVVGVkxFVkJRVVU3V1VGRGRFSXNWVUZCVlN4SFFVRkhMRWRCUVVjc1EwRkJRenRaUVVOcVFpeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xTkJRMmhDTzFGQlEwUXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5zUWl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzB0QlEzQkNPMGxCUlVRc1QwRkJUeXhGUVVGRExFOUJRVThzUlVGQlJTeE5RVUZOTEVWQlFVVXNUVUZCVFN4RlFVRkRMRU5CUVVNN1FVRkRia01zUTBGQlF5SXNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJaThxS2x4dUlDb2dRR3hwWTJWdWMyVmNiaUFxWEc0Z0tpQkRiM0I1Y21sbmFIUWdNakF4T1NCSGIyOW5iR1VnVEV4RExpQkJiR3dnVW1sbmFIUnpJRkpsYzJWeWRtVmtMbHh1SUNwY2JpQXFJRXhwWTJWdWMyVmtJSFZ1WkdWeUlIUm9aU0JCY0dGamFHVWdUR2xqWlc1elpTd2dWbVZ5YzJsdmJpQXlMakFnS0hSb1pTQmNJa3hwWTJWdWMyVmNJaWs3WEc0Z0tpQjViM1VnYldGNUlHNXZkQ0IxYzJVZ2RHaHBjeUJtYVd4bElHVjRZMlZ3ZENCcGJpQmpiMjF3YkdsaGJtTmxJSGRwZEdnZ2RHaGxJRXhwWTJWdWMyVXVYRzRnS2lCWmIzVWdiV0Y1SUc5aWRHRnBiaUJoSUdOdmNIa2diMllnZEdobElFeHBZMlZ1YzJVZ1lYUmNiaUFxWEc0Z0tpQWdJQ0FnYUhSMGNEb3ZMM2QzZHk1aGNHRmphR1V1YjNKbkwyeHBZMlZ1YzJWekwweEpRMFZPVTBVdE1pNHdYRzRnS2x4dUlDb2dWVzVzWlhOeklISmxjWFZwY21Wa0lHSjVJR0Z3Y0d4cFkyRmliR1VnYkdGM0lHOXlJR0ZuY21WbFpDQjBieUJwYmlCM2NtbDBhVzVuTENCemIyWjBkMkZ5WlZ4dUlDb2daR2x6ZEhKcFluVjBaV1FnZFc1a1pYSWdkR2hsSUV4cFkyVnVjMlVnYVhNZ1pHbHpkSEpwWW5WMFpXUWdiMjRnWVc0Z1hDSkJVeUJKVTF3aUlFSkJVMGxUTEZ4dUlDb2dWMGxVU0U5VlZDQlhRVkpTUVU1VVNVVlRJRTlTSUVOUFRrUkpWRWxQVGxNZ1QwWWdRVTVaSUV0SlRrUXNJR1ZwZEdobGNpQmxlSEJ5WlhOeklHOXlJR2x0Y0d4cFpXUXVYRzRnS2lCVFpXVWdkR2hsSUV4cFkyVnVjMlVnWm05eUlIUm9aU0J6Y0dWamFXWnBZeUJzWVc1bmRXRm5aU0JuYjNabGNtNXBibWNnY0dWeWJXbHpjMmx2Ym5NZ1lXNWtYRzRnS2lCc2FXMXBkR0YwYVc5dWN5QjFibVJsY2lCMGFHVWdUR2xqWlc1elpTNWNiaUFxSUQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVnh1SUNvdlhHNWNibWx0Y0c5eWRDQXFJR0Z6SUhWMGFXeHpJR1p5YjIwZ0p5NHZkWFJwYkhNbk8xeHVYRzUwZVhCbElFVnVkSEo1SUQwZ2V5QjJZV3gxWlRvZ2JuVnRZbVZ5T3lCeWIzYzZJRzUxYldKbGNqc2dZMjlzT2lCdWRXMWlaWElnZlR0Y2JseHVMeW9xWEc0Z0tpQkpiblJsY201aGJDQXlMV1JwYldWdWMybHZibUZzSUhOd1lYSnpaU0J0WVhSeWFYZ2dZMnhoYzNOY2JpQXFMMXh1Wlhod2IzSjBJR05zWVhOeklGTndZWEp6WlUxaGRISnBlQ0I3WEc0Z0lIQnlhWFpoZEdVZ1pXNTBjbWxsY3lBOUlHNWxkeUJOWVhBOGMzUnlhVzVuTENCRmJuUnllVDRvS1R0Y2JseHVJQ0J5WldGa2IyNXNlU0J1VW05M2N6b2diblZ0WW1WeUlEMGdNRHRjYmlBZ2NtVmhaRzl1YkhrZ2JrTnZiSE02SUc1MWJXSmxjaUE5SURBN1hHNWNiaUFnWTI5dWMzUnlkV04wYjNJb1hHNGdJQ0FnY205M2N6b2diblZ0WW1WeVcxMGdmQ0JKYm5Rek1rRnljbUY1TEZ4dUlDQWdJR052YkhNNklHNTFiV0psY2x0ZElId2dTVzUwTXpKQmNuSmhlU3hjYmlBZ0lDQjJZV3gxWlhNNklHNTFiV0psY2x0ZElId2dSbXh2WVhRek1rRnljbUY1TEZ4dUlDQWdJR1JwYlhNNklHNTFiV0psY2x0ZFhHNGdJQ2tnZTF4dUlDQWdJR2xtSUNoeWIzZHpMbXhsYm1kMGFDQWhQVDBnWTI5c2N5NXNaVzVuZEdnZ2ZId2djbTkzY3k1c1pXNW5kR2dnSVQwOUlIWmhiSFZsY3k1c1pXNW5kR2dwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWhjYmlBZ0lDQWdJQ0FnSjNKdmQzTXNJR052YkhNZ1lXNWtJSFpoYkhWbGN5QmhjbkpoZVhNZ2JYVnpkQ0JoYkd3Z2FHRjJaU0IwYUdVZ2MyRnRaU0JzWlc1bmRHZ25YRzRnSUNBZ0lDQXBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJRlJQUkU4NklFRnpjMlZ5ZENCMGFHRjBJR1JwYlhNZ1lYSmxJR3hsWjJsMExseHVJQ0FnSUhSb2FYTXVibEp2ZDNNZ1BTQmthVzF6V3pCZE8xeHVJQ0FnSUhSb2FYTXVia052YkhNZ1BTQmthVzF6V3pGZE8xeHVJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2RtRnNkV1Z6TG14bGJtZDBhRHNnYVNzcktTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCeWIzY2dQU0J5YjNkelcybGRPMXh1SUNBZ0lDQWdZMjl1YzNRZ1kyOXNJRDBnWTI5c2MxdHBYVHRjYmlBZ0lDQWdJSFJvYVhNdVkyaGxZMnRFYVcxektISnZkeXdnWTI5c0tUdGNiaUFnSUNBZ0lHTnZibk4wSUd0bGVTQTlJSFJvYVhNdWJXRnJaVXRsZVNoeWIzY3NJR052YkNrN1hHNGdJQ0FnSUNCMGFHbHpMbVZ1ZEhKcFpYTXVjMlYwS0d0bGVTd2dlM1poYkhWbE9pQjJZV3gxWlhOYmFWMHNJSEp2ZHl3Z1kyOXNmU2s3WEc0Z0lDQWdmVnh1SUNCOVhHNWNiaUFnY0hKcGRtRjBaU0J0WVd0bFMyVjVLSEp2ZHpvZ2JuVnRZbVZ5TENCamIydzZJRzUxYldKbGNpazZJSE4wY21sdVp5QjdYRzRnSUNBZ2NtVjBkWEp1SUdBa2UzSnZkMzA2Skh0amIyeDlZRHRjYmlBZ2ZWeHVYRzRnSUhCeWFYWmhkR1VnWTJobFkydEVhVzF6S0hKdmR6b2diblZ0WW1WeUxDQmpiMnc2SUc1MWJXSmxjaWtnZTF4dUlDQWdJR052Ym5OMElIZHBkR2hwYmtKdmRXNWtjeUE5SUhKdmR5QThJSFJvYVhNdWJsSnZkM01nSmlZZ1kyOXNJRHdnZEdocGN5NXVRMjlzY3p0Y2JpQWdJQ0JwWmlBb0lYZHBkR2hwYmtKdmRXNWtjeWxjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpZ25jbTkzSUdGdVpDOXZjaUJqYjJ3Z2MzQmxZMmxtYVdWa0lHOTFkSE5wWkdVZ2IyWWdiV0YwY21sNElHUnBiV1Z1YzJsdmJuTW5LVHRjYmlBZ2ZWeHVYRzRnSUhObGRDaHliM2M2SUc1MWJXSmxjaXdnWTI5c09pQnVkVzFpWlhJc0lIWmhiSFZsT2lCdWRXMWlaWElwSUh0Y2JpQWdJQ0IwYUdsekxtTm9aV05yUkdsdGN5aHliM2NzSUdOdmJDazdYRzRnSUNBZ1kyOXVjM1FnYTJWNUlEMGdkR2hwY3k1dFlXdGxTMlY1S0hKdmR5d2dZMjlzS1R0Y2JpQWdJQ0JwWmlBb0lYUm9hWE11Wlc1MGNtbGxjeTVvWVhNb2EyVjVLU2xjYmlBZ0lDQWdJSFJvYVhNdVpXNTBjbWxsY3k1elpYUW9hMlY1TENCN2RtRnNkV1VzSUhKdmR5d2dZMjlzZlNrN1hHNGdJQ0FnWld4elpWeHVJQ0FnSUNBZ2RHaHBjeTVsYm5SeWFXVnpMbWRsZENoclpYa3BJUzUyWVd4MVpTQTlJSFpoYkhWbE8xeHVJQ0I5WEc1Y2JpQWdaMlYwS0hKdmR6b2diblZ0WW1WeUxDQmpiMnc2SUc1MWJXSmxjaXdnWkdWbVlYVnNkRlpoYkhWbElEMGdNQ2tnZTF4dUlDQWdJQzh2ZEdocGN5NWphR1ZqYTBScGJYTW9jbTkzTENCamIyd3BPMXh1SUNBZ0lHTnZibk4wSUd0bGVTQTlJSFJvYVhNdWJXRnJaVXRsZVNoeWIzY3NJR052YkNrN1hHNGdJQ0FnYVdZZ0tIUm9hWE11Wlc1MGNtbGxjeTVvWVhNb2EyVjVLU2xjYmlBZ0lDQWdJSEpsZEhWeWJpQjBhR2x6TG1WdWRISnBaWE11WjJWMEtHdGxlU2toTG5aaGJIVmxPMXh1SUNBZ0lHVnNjMlZjYmlBZ0lDQWdJSEpsZEhWeWJpQmtaV1poZFd4MFZtRnNkV1U3WEc0Z0lIMWNibHh1SUNCblpYUkJiR3dvYjNKa1pYSmxaQ0E5SUhSeWRXVXBPaUI3SUhaaGJIVmxPaUJ1ZFcxaVpYSTdJSEp2ZHpvZ2JuVnRZbVZ5T3lCamIydzZJRzUxYldKbGNpQjlXMTBnZTF4dUlDQWdJR052Ym5OMElISnZkME52YkZaaGJIVmxjem9nUlc1MGNubGJYU0E5SUc1bGR5QkJjbkpoZVNoMGFHbHpMbVZ1ZEhKcFpYTXVjMmw2WlNrdVptbHNiQ2h1ZFd4c0tUdGNiaUFnSUNCc1pYUWdhU0E5SURBN1hHNGdJQ0FnZEdocGN5NWxiblJ5YVdWekxtWnZja1ZoWTJnb0tIWmhiSFZsS1NBOVBpQjdYRzRnSUNBZ0lDQnliM2REYjJ4V1lXeDFaWE5iYVNzclhTQTlJSFpoYkhWbE8xeHVJQ0FnSUgwcE8xeHVJQ0FnSUdsbUlDaHZjbVJsY21Wa0tTQjdYRzRnSUNBZ0lDQXZMeUJQY21SbGNtbHVaeUIwYUdVZ2NtVnpkV3gwSUdsemJpZDBJSEpsY1hWcGNtVmtJR1p2Y2lCd2NtOWpaWE56YVc1bklHSjFkQ0JwZENCa2IyVnpJRzFoYTJVZ2FYUWdaV0Z6YVdWeUlIUnZJSGR5YVhSbElIUmxjM1J6WEc0Z0lDQWdJQ0J5YjNkRGIyeFdZV3gxWlhNdWMyOXlkQ2dvWVN3Z1lpa2dQVDRnZTF4dUlDQWdJQ0FnSUNCcFppQW9ZUzV5YjNjZ1BUMDlJR0l1Y205M0tWeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQmhMbU52YkNBdElHSXVZMjlzTzF4dUlDQWdJQ0FnSUNCbGJITmxYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJR0V1Y205M0lDMGdZaTV5YjNjN1hHNGdJQ0FnSUNCOUtUdGNiaUFnSUNCOVhHNGdJQ0FnY21WMGRYSnVJSEp2ZDBOdmJGWmhiSFZsY3p0Y2JpQWdmVnh1WEc0Z0lHZGxkRVJwYlhNb0tUb2diblZ0WW1WeVcxMGdlMXh1SUNBZ0lISmxkSFZ5YmlCYmRHaHBjeTV1VW05M2N5d2dkR2hwY3k1dVEyOXNjMTA3WEc0Z0lIMWNibHh1SUNCblpYUlNiM2R6S0NrNklHNTFiV0psY2x0ZElIdGNiaUFnSUNCeVpYUjFjbTRnUVhKeVlYa3Vabkp2YlNoMGFHbHpMbVZ1ZEhKcFpYTXNJQ2hiWDJ0bGVTd2dkbUZzZFdWZEtTQTlQaUIyWVd4MVpTNXliM2NwTzF4dUlDQWdJQzh2SUhKbGRIVnliaUIwYUdsekxuSnZkM01nWVhNZ2RXNXJibTkzYmlCaGN5QnVkVzFpWlhKYlhUdGNiaUFnZlZ4dVhHNGdJR2RsZEVOdmJITW9LVG9nYm5WdFltVnlXMTBnZTF4dUlDQWdJSEpsZEhWeWJpQkJjbkpoZVM1bWNtOXRLSFJvYVhNdVpXNTBjbWxsY3l3Z0tGdGZhMlY1TENCMllXeDFaVjBwSUQwK0lIWmhiSFZsTG1OdmJDazdYRzRnSUNBZ0x5OGdjbVYwZFhKdUlIUm9hWE11WTI5c2N5QmhjeUIxYm10dWIzZHVJR0Z6SUc1MWJXSmxjbHRkTzF4dUlDQjlYRzVjYmlBZ1oyVjBWbUZzZFdWektDazZJRzUxYldKbGNsdGRJSHRjYmlBZ0lDQnlaWFIxY200Z1FYSnlZWGt1Wm5KdmJTaDBhR2x6TG1WdWRISnBaWE1zSUNoYlgydGxlU3dnZG1Gc2RXVmRLU0E5UGlCMllXeDFaUzUyWVd4MVpTazdYRzRnSUM4dmNtVjBkWEp1SUhSb2FYTXVkbUZzZFdWeklHRnpJSFZ1YTI1dmQyNGdZWE1nYm5WdFltVnlXMTA3WEc0Z0lIMWNibHh1SUNCbWIzSkZZV05vS0dadU9pQW9kbUZzZFdVNklHNTFiV0psY2l3Z2NtOTNPaUJ1ZFcxaVpYSXNJR052YkRvZ2JuVnRZbVZ5S1NBOVBpQjJiMmxrS1RvZ2RtOXBaQ0I3WEc0Z0lDQWdkR2hwY3k1bGJuUnlhV1Z6TG1admNrVmhZMmdvS0haaGJIVmxLU0E5UGlCbWJpaDJZV3gxWlM1MllXeDFaU3dnZG1Gc2RXVXVjbTkzTENCMllXeDFaUzVqYjJ3cEtUdGNiaUFnZlZ4dVhHNGdJRzFoY0NobWJqb2dLSFpoYkhWbE9pQnVkVzFpWlhJc0lISnZkem9nYm5WdFltVnlMQ0JqYjJ3NklHNTFiV0psY2lrZ1BUNGdiblZ0WW1WeUtUb2dVM0JoY25ObFRXRjBjbWw0SUh0Y2JpQWdJQ0JqYjI1emRDQjJZV3h6SUQwZ2JtVjNJRVpzYjJGME16SkJjbkpoZVNoMGFHbHpMbVZ1ZEhKcFpYTXVjMmw2WlNrN1hHNGdJQ0FnYkdWMElHa2dQU0F3TzF4dUlDQWdJSFJvYVhNdVpXNTBjbWxsY3k1bWIzSkZZV05vS0NoMllXeDFaU2tnUFQ0Z2UxeHVJQ0FnSUNBZ2RtRnNjMXRwS3l0ZElEMGdabTRvZG1Gc2RXVXVkbUZzZFdVc0lIWmhiSFZsTG5KdmR5d2dkbUZzZFdVdVkyOXNLVHRjYmlBZ0lDQjlLVHRjYmlBZ0lDQmpiMjV6ZENCa2FXMXpJRDBnVzNSb2FYTXVibEp2ZDNNc0lIUm9hWE11YmtOdmJITmRPMXh1SUNBZ0lISmxkSFZ5YmlCdVpYY2dVM0JoY25ObFRXRjBjbWw0S0hSb2FYTXVaMlYwVW05M2N5Z3BMQ0IwYUdsekxtZGxkRU52YkhNb0tTd2dkbUZzY3lCaGN5QjFibXR1YjNkdUlHRnpJRzUxYldKbGNsdGRMQ0JrYVcxektUdGNiaUFnZlZ4dVhHNGdJSFJ2UVhKeVlYa29LU0I3WEc0Z0lDQWdZMjl1YzNRZ2NtOTNjem9nZFc1a1pXWnBibVZrVzEwZ1BTQjFkR2xzY3k1bGJYQjBlU2gwYUdsekxtNVNiM2R6S1R0Y2JpQWdJQ0JqYjI1emRDQnZkWFJ3ZFhRZ1BTQnliM2R6TG0xaGNDZ29LU0E5UGlCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnZFhScGJITXVlbVZ5YjNNb2RHaHBjeTV1UTI5c2N5azdYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RHaHBjeTVsYm5SeWFXVnpMbVp2Y2tWaFkyZ29LSFpoYkhWbEtTQTlQaUI3WEc0Z0lDQWdJQ0J2ZFhSd2RYUmJkbUZzZFdVdWNtOTNYVnQyWVd4MVpTNWpiMnhkSUQwZ2RtRnNkV1V1ZG1Gc2RXVTdYRzRnSUNBZ2ZTazdYRzRnSUNBZ2NtVjBkWEp1SUc5MWRIQjFkRHRjYmlBZ2ZWeHVmVnh1WEc0dktpcGNiaUFxSUZSeVlXNXpjRzl6WlNCaElITndZWEp6WlNCdFlYUnlhWGhjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlIUnlZVzV6Y0c5elpTaHRZWFJ5YVhnNklGTndZWEp6WlUxaGRISnBlQ2s2SUZOd1lYSnpaVTFoZEhKcGVDQjdYRzRnSUdOdmJuTjBJRzlzWkZKdmQzTWdQU0J0WVhSeWFYZ3VaMlYwVW05M2N5Z3BPMXh1SUNCamIyNXpkQ0J2YkdSRGIyeHpJRDBnYldGMGNtbDRMbWRsZEVOdmJITW9LVHRjYmlBZ1kyOXVjM1FnYjJ4a1ZtRnNjeUE5SUcxaGRISnBlQzVuWlhSV1lXeDFaWE1vS1R0Y2JpQWdZMjl1YzNRZ2JXRjBiR1Z1SUQwZ2IyeGtRMjlzY3k1c1pXNW5kR2c3WEc0Z0lHTnZibk4wSUdOdmJITWdQU0J1WlhjZ1NXNTBNekpCY25KaGVTaHRZWFJzWlc0cE8xeHVJQ0JqYjI1emRDQnliM2R6SUQwZ2JtVjNJRWx1ZERNeVFYSnlZWGtvYldGMGJHVnVLVHRjYmlBZ1kyOXVjM1FnZG1Gc2N5QTlJRzVsZHlCR2JHOWhkRE15UVhKeVlYa29iV0YwYkdWdUtUdGNibHh1SUNCamIyeHpMbk5sZENodmJHUlNiM2R6S1R0Y2JpQWdjbTkzY3k1elpYUW9iMnhrUTI5c2N5azdYRzRnSUhaaGJITXVjMlYwS0c5c1pGWmhiSE1wTzF4dUlDQmpiMjV6ZENCa2FXMXpJRDBnVzIxaGRISnBlQzV1UTI5c2N5d2diV0YwY21sNExtNVNiM2R6WFR0Y2JpQWdjbVYwZFhKdUlHNWxkeUJUY0dGeWMyVk5ZWFJ5YVhnb2NtOTNjeXdnWTI5c2N5d2dkbUZzY3l3Z1pHbHRjeWs3WEc1OVhHNWNiaThxS2x4dUlDb2dRMjl1YzNSeWRXTjBJR0VnYzNCaGNuTmxJR2xrWlc1MGFYUjVJRzFoZEhKcGVGeHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYVdSbGJuUnBkSGtvYzJsNlpUb2diblZ0WW1WeVcxMHBPaUJUY0dGeWMyVk5ZWFJ5YVhnZ2UxeHVJQ0JqYjI1emRDQmJjbTkzYzEwZ1BTQnphWHBsTzF4dUlDQmpiMjV6ZENCdFlYUnlhWGdnUFNCdVpYY2dVM0JoY25ObFRXRjBjbWw0S0Z0ZExDQmJYU3dnVzEwc0lITnBlbVVwTzF4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSEp2ZDNNN0lHa3JLeWxjYmlBZ0lDQnRZWFJ5YVhndWMyVjBLR2tzSUdrc0lERXBPMXh1WEc0Z0lISmxkSFZ5YmlCdFlYUnlhWGc3WEc1OVhHNWNiaThxS2x4dUlDb2dSV3hsYldWdWRDMTNhWE5sSUcxMWJIUnBjR3hwWTJGMGFXOXVJRzltSUhSM2J5QnRZWFJ5YVdObGMxeHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnY0dGcGNuZHBjMlZOZFd4MGFYQnNlU2hjYmlBZ1lUb2dVM0JoY25ObFRXRjBjbWw0TEZ4dUlDQmlPaUJUY0dGeWMyVk5ZWFJ5YVhoY2JpazZJRk53WVhKelpVMWhkSEpwZUNCN1hHNGdJSEpsZEhWeWJpQmxiR1Z0Wlc1MFYybHpaU2hoTENCaUxDQW9lQ3dnZVNrZ1BUNGdlQ0FxSUhrcE8xeHVmVnh1WEc0dktpcGNiaUFxSUVWc1pXMWxiblF0ZDJselpTQmhaR1JwZEdsdmJpQnZaaUIwZDI4Z2JXRjBjbWxqWlhOY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR0ZrWkNoaE9pQlRjR0Z5YzJWTllYUnlhWGdzSUdJNklGTndZWEp6WlUxaGRISnBlQ2s2SUZOd1lYSnpaVTFoZEhKcGVDQjdYRzRnSUhKbGRIVnliaUJsYkdWdFpXNTBWMmx6WlNoaExDQmlMQ0FvZUN3Z2VTa2dQVDRnZUNBcklIa3BPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFVnNaVzFsYm5RdGQybHpaU0J6ZFdKMGNtRmpkR2x2YmlCdlppQjBkMjhnYldGMGNtbGpaWE5jYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlITjFZblJ5WVdOMEtHRTZJRk53WVhKelpVMWhkSEpwZUN3Z1lqb2dVM0JoY25ObFRXRjBjbWw0S1RvZ1UzQmhjbk5sVFdGMGNtbDRJSHRjYmlBZ2NtVjBkWEp1SUdWc1pXMWxiblJYYVhObEtHRXNJR0lzSUNoNExDQjVLU0E5UGlCNElDMGdlU2s3WEc1OVhHNWNiaThxS2x4dUlDb2dSV3hsYldWdWRDMTNhWE5sSUcxaGVHbHRkVzBnYjJZZ2RIZHZJRzFoZEhKcFkyVnpYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdFlYaHBiWFZ0S0dFNklGTndZWEp6WlUxaGRISnBlQ3dnWWpvZ1UzQmhjbk5sVFdGMGNtbDRLVG9nVTNCaGNuTmxUV0YwY21sNElIdGNiaUFnY21WMGRYSnVJR1ZzWlcxbGJuUlhhWE5sS0dFc0lHSXNJQ2g0TENCNUtTQTlQaUFvZUNBK0lIa2dQeUI0SURvZ2VTa3BPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGTmpZV3hoY2lCdGRXeDBhWEJzYVdOaGRHbHZiaUJ2WmlCMGQyOGdiV0YwY21salpYTmNiaUFxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUcxMWJIUnBjR3g1VTJOaGJHRnlLR0U2SUZOd1lYSnpaVTFoZEhKcGVDd2djMk5oYkdGeU9pQnVkVzFpWlhJcE9pQlRjR0Z5YzJWTllYUnlhWGdnZTF4dUlDQnlaWFIxY200Z1lTNXRZWEFvS0haaGJIVmxPaUJ1ZFcxaVpYSXBJRDArSUh0Y2JpQWdJQ0J5WlhSMWNtNGdkbUZzZFdVZ0tpQnpZMkZzWVhJN1hHNGdJSDBwTzF4dWZWeHVYRzR2S2lwY2JpQXFJRkpsZEhWeWJuTWdZU0J1WlhjZ2JXRjBjbWw0SUhkcGRHZ2dlbVZ5YnlCbGJuUnlhV1Z6SUhKbGJXOTJaV1F1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmxiR2x0YVc1aGRHVmFaWEp2Y3lodE9pQlRjR0Z5YzJWTllYUnlhWGdwSUh0Y2JpQWdZMjl1YzNRZ2VtVnliMGx1WkdsalpYTWdQU0J1WlhjZ1UyVjBLQ2s3WEc0Z0lHTnZibk4wSUhaaGJIVmxjeUE5SUcwdVoyVjBWbUZzZFdWektDazdYRzRnSUdOdmJuTjBJSEp2ZDNNZ1BTQnRMbWRsZEZKdmQzTW9LVHRjYmlBZ1kyOXVjM1FnWTI5c2N5QTlJRzB1WjJWMFEyOXNjeWdwTzF4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSFpoYkhWbGN5NXNaVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJR2xtSUNoMllXeDFaWE5iYVYwZ1BUMDlJREFwWEc0Z0lDQWdJQ0I2WlhKdlNXNWthV05sY3k1aFpHUW9hU2s3WEc0Z0lIMWNiaUFnWTI5dWMzUWdjbVZ0YjNabFFubGFaWEp2U1c1a1pYZ2dQU0FvWHpvZ1lXNTVMQ0JwYm1SbGVEb2diblZ0WW1WeUtTQTlQaUFoZW1WeWIwbHVaR2xqWlhNdWFHRnpLR2x1WkdWNEtUdGNiaUFnWTI5dWMzUWdibVY0ZEZaaGJIVmxjeUE5SUhaaGJIVmxjeTVtYVd4MFpYSW9jbVZ0YjNabFFubGFaWEp2U1c1a1pYZ3BPMXh1SUNCamIyNXpkQ0J1WlhoMFVtOTNjeUE5SUhKdmQzTXVabWxzZEdWeUtISmxiVzkyWlVKNVdtVnliMGx1WkdWNEtUdGNiaUFnWTI5dWMzUWdibVY0ZEVOdmJITWdQU0JqYjJ4ekxtWnBiSFJsY2loeVpXMXZkbVZDZVZwbGNtOUpibVJsZUNrN1hHNWNiaUFnY21WMGRYSnVJRzVsZHlCVGNHRnljMlZOWVhSeWFYZ29ibVY0ZEZKdmQzTXNJRzVsZUhSRGIyeHpMQ0J1WlhoMFZtRnNkV1Z6TENCdExtZGxkRVJwYlhNb0tTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1RtOXliV0ZzYVhwaGRHbHZiaUJ2WmlCaElITndZWEp6WlNCdFlYUnlhWGd1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnViM0p0WVd4cGVtVW9iVG9nVTNCaGNuTmxUV0YwY21sNExDQnViM0p0Vkhsd1pTQTlJRTV2Y20xVWVYQmxMbXd5S1NCN1hHNGdJR052Ym5OMElHNXZjbTFHYmlBOUlHNXZjbTFHYm5OYmJtOXliVlI1Y0dWZE8xeHVYRzRnSUdOdmJuTjBJR052YkhOQ2VWSnZkeUE5SUc1bGR5Qk5ZWEE4Ym5WdFltVnlMQ0J1ZFcxaVpYSmJYVDRvS1R0Y2JpQWdiUzVtYjNKRllXTm9LQ2hmTENCeWIzY3NJR052YkNrZ1BUNGdlMXh1SUNBZ0lHTnZibk4wSUdOdmJITWdQU0JqYjJ4elFubFNiM2N1WjJWMEtISnZkeWtnZkh3Z1cxMDdYRzRnSUNBZ1kyOXNjeTV3ZFhOb0tHTnZiQ2s3WEc0Z0lDQWdZMjlzYzBKNVVtOTNMbk5sZENoeWIzY3NJR052YkhNcE8xeHVJQ0I5S1R0Y2JseHVJQ0JqYjI1emRDQnVaWGgwVFdGMGNtbDRJRDBnYm1WM0lGTndZWEp6WlUxaGRISnBlQ2hiWFN3Z1cxMHNJRnRkTENCdExtZGxkRVJwYlhNb0tTazdYRzVjYmlBZ1ptOXlJQ2hqYjI1emRDQnliM2NnYjJZZ1kyOXNjMEo1VW05M0xtdGxlWE1vS1NrZ2UxeHVJQ0FnSUdOdmJuTjBJR052YkhNZ1BTQmpiMnh6UW5sU2IzY3VaMlYwS0hKdmR5a2hMbk52Y25Rb0tUdGNibHh1SUNBZ0lHTnZibk4wSUhaaGJITWdQU0JqYjJ4ekxtMWhjQ2dvWTI5c0tTQTlQaUJ0TG1kbGRDaHliM2NzSUdOdmJDa3BPMXh1SUNBZ0lHTnZibk4wSUc1dmNtMGdQU0J1YjNKdFJtNG9kbUZzY3lrN1hHNGdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCdWIzSnRMbXhsYm1kMGFEc2dhU3NyS1Z4dUlDQWdJQ0FnYm1WNGRFMWhkSEpwZUM1elpYUW9jbTkzTENCamIyeHpXMmxkTENCdWIzSnRXMmxkS1R0Y2JpQWdmVnh1WEc0Z0lISmxkSFZ5YmlCdVpYaDBUV0YwY21sNE8xeHVmVnh1WEc0dktpcGNiaUFxSUZabFkzUnZjaUJ1YjNKdFlXeHBlbUYwYVc5dUlHWjFibU4wYVc5dWMxeHVJQ292WEc1MGVYQmxJRTV2Y20xR2JuTWdQU0I3SUZ0clpYa2dhVzRnVG05eWJWUjVjR1ZkT2lBb2Rqb2diblZ0WW1WeVcxMHBJRDArSUc1MWJXSmxjbHRkSUgwN1hHNWpiMjV6ZENCdWIzSnRSbTV6T2lCT2IzSnRSbTV6SUQwZ2UxeHVJQ0JiVG05eWJWUjVjR1V1YldGNFhUb2dLSGh6T2lCdWRXMWlaWEpiWFNrZ1BUNGdlMXh1SUNBZ0lHeGxkQ0J0WVhnZ1BTQXRTVzVtYVc1cGRIazdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQjRjeTVzWlc1bmRHZzdJR2tyS3lsY2JpQWdJQ0FnSUcxaGVDQTlJSGh6VzJsZElENGdiV0Y0SUQ4Z2VITmJhVjBnT2lCdFlYZzdYRzVjYmlBZ0lDQnlaWFIxY200Z2VITXViV0Z3S0NoNEtTQTlQaUI0SUM4Z2JXRjRLVHRjYmlBZ2ZTeGNiaUFnVzA1dmNtMVVlWEJsTG13eFhUb2dLSGh6T2lCdWRXMWlaWEpiWFNrZ1BUNGdlMXh1SUNBZ0lHeGxkQ0J6ZFcwZ1BTQXdPMXh1SUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dlSE11YkdWdVozUm9PeUJwS3lzcFhHNGdJQ0FnSUNCemRXMGdLejBnZUhOYmFWMDdYRzVjYmlBZ0lDQnlaWFIxY200Z2VITXViV0Z3S0NoNEtTQTlQaUI0SUM4Z2MzVnRLVHRjYmlBZ2ZTeGNiaUFnVzA1dmNtMVVlWEJsTG13eVhUb2dLSGh6T2lCdWRXMWlaWEpiWFNrZ1BUNGdlMXh1SUNBZ0lHeGxkQ0J6ZFcwZ1BTQXdPMXh1SUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dlSE11YkdWdVozUm9PeUJwS3lzcFhHNGdJQ0FnSUNCemRXMGdLejBnZUhOYmFWMGdLaW9nTWp0Y2JseHVJQ0FnSUhKbGRIVnliaUI0Y3k1dFlYQW9LSGdwSUQwK0lFMWhkR2d1YzNGeWRDaDRJQ29xSURJZ0x5QnpkVzBwS1R0Y2JpQWdmU3hjYm4wN1hHNWNibVY0Y0c5eWRDQmpiMjV6ZENCbGJuVnRJRTV2Y20xVWVYQmxJSHRjYmlBZ2JXRjRJRDBnSjIxaGVDY3NYRzRnSUd3eElEMGdKMnd4Snl4Y2JpQWdiRElnUFNBbmJESW5MRnh1ZlZ4dVhHNHZLaXBjYmlBcUlFaGxiSEJsY2lCbWRXNWpkR2x2YmlCbWIzSWdaV3hsYldWdWRDMTNhWE5sSUc5d1pYSmhkR2x2Ym5NdVhHNGdLaTljYm1aMWJtTjBhVzl1SUdWc1pXMWxiblJYYVhObEtGeHVJQ0JoT2lCVGNHRnljMlZOWVhSeWFYZ3NYRzRnSUdJNklGTndZWEp6WlUxaGRISnBlQ3hjYmlBZ2IzQTZJQ2g0T2lCdWRXMWlaWElzSUhrNklHNTFiV0psY2lrZ1BUNGdiblZ0WW1WeVhHNHBPaUJUY0dGeWMyVk5ZWFJ5YVhnZ2UxeHVJQ0JqYjI1emRDQjJhWE5wZEdWa0lEMGdibVYzSUZObGREeHpkSEpwYm1jK0tDazdYRzRnSUdOdmJuTjBJSEp2ZDNNNklHNTFiV0psY2x0ZElEMGdXMTA3WEc0Z0lHTnZibk4wSUdOdmJITTZJRzUxYldKbGNsdGRJRDBnVzEwN1hHNGdJR052Ym5OMElIWmhiSE02SUc1MWJXSmxjbHRkSUQwZ1cxMDdYRzVjYmlBZ1kyOXVjM1FnYjNCbGNtRjBaU0E5SUNoeWIzYzZJRzUxYldKbGNpd2dZMjlzT2lCdWRXMWlaWElwSUQwK0lIdGNiaUFnSUNCeWIzZHpMbkIxYzJnb2NtOTNLVHRjYmlBZ0lDQmpiMnh6TG5CMWMyZ29ZMjlzS1R0Y2JpQWdJQ0JqYjI1emRDQnVaWGgwVm1Gc2RXVWdQU0J2Y0NoaExtZGxkQ2h5YjNjc0lHTnZiQ2tzSUdJdVoyVjBLSEp2ZHl3Z1kyOXNLU2s3WEc0Z0lDQWdkbUZzY3k1d2RYTm9LRzVsZUhSV1lXeDFaU2s3WEc0Z0lIMDdYRzRnSUdOdmJuTjBJSFpoYkhWbGMwRWdQU0JoTG1kbGRGWmhiSFZsY3lncE8xeHVJQ0JqYjI1emRDQnliM2R6UVNBOUlHRXVaMlYwVW05M2N5Z3BPMXh1SUNCamIyNXpkQ0JqYjJ4elFTQTlJR0V1WjJWMFEyOXNjeWdwTzF4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSFpoYkhWbGMwRXViR1Z1WjNSb095QnBLeXNwSUh0Y2JpQWdJQ0JqYjI1emRDQnliM2NnUFNCeWIzZHpRVnRwWFR0Y2JpQWdJQ0JqYjI1emRDQmpiMndnUFNCamIyeHpRVnRwWFR0Y2JpQWdJQ0JqYjI1emRDQnJaWGtnUFNCZ0pIdHliM2Q5T2lSN1kyOXNmV0E3WEc0Z0lDQWdkbWx6YVhSbFpDNWhaR1FvYTJWNUtUdGNiaUFnSUNCdmNHVnlZWFJsS0hKdmR5d2dZMjlzS1R0Y2JpQWdmVnh1WEc0Z0lHTnZibk4wSUhaaGJIVmxjMElnUFNCaUxtZGxkRlpoYkhWbGN5Z3BPMXh1SUNCamIyNXpkQ0J5YjNkelFpQTlJR0l1WjJWMFVtOTNjeWdwTzF4dUlDQmpiMjV6ZENCamIyeHpRaUE5SUdJdVoyVjBRMjlzY3lncE8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhaaGJIVmxjMEl1YkdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNCamIyNXpkQ0J5YjNjZ1BTQnliM2R6UWx0cFhUdGNiaUFnSUNCamIyNXpkQ0JqYjJ3Z1BTQmpiMnh6UWx0cFhUdGNiaUFnSUNCamIyNXpkQ0JyWlhrZ1BTQmdKSHR5YjNkOU9pUjdZMjlzZldBN1hHNGdJQ0FnYVdZZ0tIWnBjMmwwWldRdWFHRnpLR3RsZVNrcElHTnZiblJwYm5WbE8xeHVJQ0FnSUc5d1pYSmhkR1VvY205M0xDQmpiMndwTzF4dUlDQjlYRzVjYmlBZ1kyOXVjM1FnWkdsdGN5QTlJRnRoTG01U2IzZHpMQ0JoTG01RGIyeHpYVHRjYmlBZ2NtVjBkWEp1SUc1bGR5QlRjR0Z5YzJWTllYUnlhWGdvY205M2N5d2dZMjlzY3l3Z2RtRnNjeXdnWkdsdGN5azdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1NHVnNjR1Z5SUdaMWJtTjBhVzl1SUdadmNpQm5aWFIwYVc1bklHUmhkR0VzSUdsdVpHbGpaWE1zSUdGdVpDQnBibkIwY2lCaGNuSmhlWE1nWm5KdmJTQmhJSE53WVhKelpWeHVJQ29nYldGMGNtbDRJSFJ2SUdadmJHeHZkeUJqYzNJZ2JXRjBjbWw0SUdOdmJuWmxiblJwYjI1ekxpQlRkWEJsY2lCcGJtVm1abWxqYVdWdWRDQW9ZVzVrSUd0cGJtUWdiMlpjYmlBcUlHUmxabVZoZEhNZ2RHaGxJSEIxY25CdmMyVWdiMllnZEdocGN5QmpiMjUyWlc1MGFXOXVLU0JpZFhRZ1lTQnNiM1FnYjJZZ2RHaGxJSEJ2Y25SbFpDQndlWFJvYjI0Z2RISmxaVnh1SUNvZ2MyVmhjbU5vSUd4dloybGpJR1JsY0dWdVpITWdiMjRnZEdocGN5QmtZWFJoSUdadmNtMWhkQzVjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHZGxkRU5UVWloNE9pQlRjR0Z5YzJWTllYUnlhWGdwSUh0Y2JpQWdZMjl1YzNRZ1pXNTBjbWxsY3pvZ1JXNTBjbmxiWFNBOUlGdGRPMXh1WEc0Z0lIZ3VabTl5UldGamFDZ29kbUZzZFdVc0lISnZkeXdnWTI5c0tTQTlQaUI3WEc0Z0lDQWdaVzUwY21sbGN5NXdkWE5vS0h0MllXeDFaU3dnY205M0xDQmpiMng5S1R0Y2JpQWdmU2s3WEc1Y2JpQWdaVzUwY21sbGN5NXpiM0owS0NoaExDQmlLU0E5UGlCN1hHNGdJQ0FnYVdZZ0tHRXVjbTkzSUQwOVBTQmlMbkp2ZHlsY2JpQWdJQ0FnSUhKbGRIVnliaUJoTG1OdmJDQXRJR0l1WTI5c08xeHVJQ0FnSUdWc2MyVmNiaUFnSUNBZ0lISmxkSFZ5YmlCaExuSnZkeUF0SUdJdWNtOTNPMXh1SUNCOUtUdGNibHh1SUNCamIyNXpkQ0JwYm1ScFkyVnpPaUJ1ZFcxaVpYSmJYU0E5SUZ0ZE8xeHVJQ0JqYjI1emRDQjJZV3gxWlhNNklHNTFiV0psY2x0ZElEMGdXMTA3WEc0Z0lHTnZibk4wSUdsdVpIQjBjam9nYm5WdFltVnlXMTBnUFNCYlhUdGNibHh1SUNCc1pYUWdZM1Z5Y21WdWRGSnZkeUE5SUMweE8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdWdWRISnBaWE11YkdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNCamIyNXpkQ0I3Y205M0xDQmpiMndzSUhaaGJIVmxmU0E5SUdWdWRISnBaWE5iYVYwN1hHNGdJQ0FnYVdZZ0tISnZkeUFoUFQwZ1kzVnljbVZ1ZEZKdmR5a2dlMXh1SUNBZ0lDQWdZM1Z5Y21WdWRGSnZkeUE5SUhKdmR6dGNiaUFnSUNBZ0lHbHVaSEIwY2k1d2RYTm9LR2twTzF4dUlDQWdJSDFjYmlBZ0lDQnBibVJwWTJWekxuQjFjMmdvWTI5c0tUdGNiaUFnSUNCMllXeDFaWE11Y0hWemFDaDJZV3gxWlNrN1hHNGdJSDFjYmx4dUlDQnlaWFIxY200Z2UybHVaR2xqWlhNc0lIWmhiSFZsY3l3Z2FXNWtjSFJ5ZlR0Y2JuMWNiaUpkZlE9PSIsIi8qKlxuICogQGxpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgMjAxOSBHb29nbGUgTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICovXG4vKipcbiAqIFRoaXMgaXMgYSBKYXZhU2NyaXB0IHJlaW1wbGVtZW50YXRpb24gb2YgVU1BUCAob3JpZ2luYWwgbGljZW5zZSBiZWxvdyksIGZyb21cbiAqIHRoZSBweXRob24gaW1wbGVtZW50YXRpb24gZm91bmQgYXQgaHR0cHM6Ly9naXRodWIuY29tL2xtY2lubmVzL3VtYXAuXG4gKlxuICogQGF1dGhvciBhbmR5Y29lbmVuQGdvb2dsZS5jb20gKEFuZHkgQ29lbmVuKVxuICovXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBCU0QgMy1DbGF1c2UgTGljZW5zZVxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxNywgTGVsYW5kIE1jSW5uZXNcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0XG4gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDpcbiAqXG4gKiAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpc1xuICogICBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci5cbiAqXG4gKiAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSxcbiAqICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvblxuICogICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi5cbiAqXG4gKiAqIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHNcbiAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb21cbiAqICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi5cbiAqXG4gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTIFwiQVMgSVNcIlxuICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRVxuICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFXG4gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFXG4gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTFxuICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1JcbiAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSXG4gKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLFxuICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0VcbiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuXG4gKi9cbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0IGNsYXNzIEZsYXRUcmVlIHtcbiAgICBoeXBlcnBsYW5lcztcbiAgICBvZmZzZXRzO1xuICAgIGNoaWxkcmVuO1xuICAgIGluZGljZXM7XG4gICAgY29uc3RydWN0b3IoaHlwZXJwbGFuZXMsIG9mZnNldHMsIGNoaWxkcmVuLCBpbmRpY2VzKSB7XG4gICAgICAgIHRoaXMuaHlwZXJwbGFuZXMgPSBoeXBlcnBsYW5lcztcbiAgICAgICAgdGhpcy5vZmZzZXRzID0gb2Zmc2V0cztcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICAgICAgICB0aGlzLmluZGljZXMgPSBpbmRpY2VzO1xuICAgIH1cbn1cbi8qKlxuICogQnVpbGQgYSByYW5kb20gcHJvamVjdGlvbiBmb3Jlc3Qgd2l0aCBgYG5UcmVlc2BgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZUZvcmVzdChkYXRhLCBuTmVpZ2hib3JzLCBuVHJlZXMsIHJhbmRvbSkge1xuICAgIGNvbnN0IGxlYWZTaXplID0gTWF0aC5tYXgoMTAsIG5OZWlnaGJvcnMpO1xuICAgIGNvbnN0IHRyZWVzID0gdXRpbHNcbiAgICAgICAgLnJhbmdlKG5UcmVlcylcbiAgICAgICAgLm1hcCgoXywgaSkgPT4gbWFrZVRyZWUoZGF0YSwgbGVhZlNpemUsIGksIHJhbmRvbSkpO1xuICAgIGNvbnN0IGZvcmVzdCA9IHRyZWVzLm1hcCgodHJlZSkgPT4gZmxhdHRlblRyZWUodHJlZSwgbGVhZlNpemUpKTtcbiAgICByZXR1cm4gZm9yZXN0O1xufVxuLyoqXG4gKiBDb25zdHJ1Y3QgYSByYW5kb20gcHJvamVjdGlvbiB0cmVlIGJhc2VkIG9uIGBgZGF0YWBgIHdpdGggbGVhdmVzXG4gKiBvZiBzaXplIGF0IG1vc3QgYGBsZWFmU2l6ZWBgXG4gKi9cbmZ1bmN0aW9uIG1ha2VUcmVlKGRhdGEsIGxlYWZTaXplID0gMzAsIG4sIHJhbmRvbSkge1xuICAgIGNvbnN0IGluZGljZXMgPSB1dGlscy5yYW5nZShkYXRhLmxlbmd0aCk7XG4gICAgY29uc3QgdHJlZSA9IG1ha2VFdWNsaWRlYW5UcmVlKGRhdGEsIGluZGljZXMsIGxlYWZTaXplLCBuLCByYW5kb20pO1xuICAgIHJldHVybiB0cmVlO1xufVxuZnVuY3Rpb24gbWFrZUV1Y2xpZGVhblRyZWUoZGF0YSwgaW5kaWNlcywgbGVhZlNpemUgPSAzMCwgcSwgcmFuZG9tKSB7XG4gICAgaWYgKGluZGljZXMubGVuZ3RoID4gbGVhZlNpemUpIHtcbiAgICAgICAgY29uc3Qgc3BsaXRSZXN1bHRzID0gZXVjbGlkZWFuUmFuZG9tUHJvamVjdGlvblNwbGl0KGRhdGEsIGluZGljZXMsIHJhbmRvbSk7XG4gICAgICAgIGNvbnN0IHsgaW5kaWNlc0xlZnQsIGluZGljZXNSaWdodCwgaHlwZXJwbGFuZSwgb2Zmc2V0IH0gPSBzcGxpdFJlc3VsdHM7XG4gICAgICAgIGNvbnN0IGxlZnRDaGlsZCA9IG1ha2VFdWNsaWRlYW5UcmVlKGRhdGEsIGluZGljZXNMZWZ0LCBsZWFmU2l6ZSwgcSArIDEsIHJhbmRvbSk7XG4gICAgICAgIGNvbnN0IHJpZ2h0Q2hpbGQgPSBtYWtlRXVjbGlkZWFuVHJlZShkYXRhLCBpbmRpY2VzUmlnaHQsIGxlYWZTaXplLCBxICsgMSwgcmFuZG9tKTtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHsgbGVmdENoaWxkLCByaWdodENoaWxkLCBpc0xlYWY6IGZhbHNlLCBoeXBlcnBsYW5lLCBvZmZzZXQgfTtcbiAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBjb25zdCBub2RlID0geyBpbmRpY2VzLCBpc0xlYWY6IHRydWUgfTtcbiAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfVxufVxuLyoqXG4gKiBHaXZlbiBhIHNldCBvZiBgYGluZGljZXNgYCBmb3IgZGF0YSBwb2ludHMgZnJvbSBgYGRhdGFgYCwgY3JlYXRlXG4gKiBhIHJhbmRvbSBoeXBlcnBsYW5lIHRvIHNwbGl0IHRoZSBkYXRhLCByZXR1cm5pbmcgdHdvIGFycmF5cyBpbmRpY2VzXG4gKiB0aGF0IGZhbGwgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGh5cGVycGxhbmUuIFRoaXMgaXMgdGhlIGJhc2lzIGZvciBhXG4gKiByYW5kb20gcHJvamVjdGlvbiB0cmVlLCB3aGljaCBzaW1wbHkgdXNlcyB0aGlzIHNwbGl0dGluZyByZWN1cnNpdmVseS5cbiAqIFRoaXMgcGFydGljdWxhciBzcGxpdCB1c2VzIGV1Y2xpZGVhbiBkaXN0YW5jZSB0byBkZXRlcm1pbmUgdGhlIGh5cGVycGxhbmVcbiAqIGFuZCB3aGljaCBzaWRlIGVhY2ggZGF0YSBzYW1wbGUgZmFsbHMgb24uXG4gKi9cbmZ1bmN0aW9uIGV1Y2xpZGVhblJhbmRvbVByb2plY3Rpb25TcGxpdChkYXRhLCBpbmRpY2VzLCByYW5kb20pIHtcbiAgICAvL2NvbnN0IGRpbSA9IDE7XG4gICAgLy8gU2VsZWN0IHR3byByYW5kb20gcG9pbnRzLCBzZXQgdGhlIGh5cGVycGxhbmUgYmV0d2VlbiB0aGVtXG4gICAgY29uc3QgbGVmdEluZGV4ID0gdXRpbHMudGF1UmFuZEludChpbmRpY2VzLmxlbmd0aCwgcmFuZG9tKTtcbiAgICBsZXQgcmlnaHRJbmRleCA9IHV0aWxzLnRhdVJhbmRJbnQoaW5kaWNlcy5sZW5ndGgsIHJhbmRvbSk7XG4gICAgcmlnaHRJbmRleCArPSBsZWZ0SW5kZXggPT09IHJpZ2h0SW5kZXggPyAxIDogMDtcbiAgICByaWdodEluZGV4ID0gcmlnaHRJbmRleCAlIGluZGljZXMubGVuZ3RoO1xuICAgIGNvbnN0IGxlZnQgPSBpbmRpY2VzW2xlZnRJbmRleF07XG4gICAgY29uc3QgcmlnaHQgPSBpbmRpY2VzW3JpZ2h0SW5kZXhdO1xuICAgIC8vIENvbXB1dGUgdGhlIG5vcm1hbCB2ZWN0b3IgdG8gdGhlIGh5cGVycGxhbmUgKHRoZSB2ZWN0b3IgYmV0d2VlbiB0aGUgdHdvXG4gICAgLy8gcG9pbnRzKSBhbmQgdGhlIG9mZnNldCBmcm9tIHRoZSBvcmlnaW5cbiAgICBsZXQgaHlwZXJwbGFuZU9mZnNldCA9IDA7XG4gICAgbGV0IGh5cGVycGxhbmVWZWN0b3IgPSAwO1xuICAgIGh5cGVycGxhbmVWZWN0b3IgPSBkYXRhW2xlZnRdIC0gZGF0YVtyaWdodF07XG4gICAgaHlwZXJwbGFuZU9mZnNldCAtPVxuICAgICAgICAoaHlwZXJwbGFuZVZlY3RvciAqIChkYXRhW2xlZnRdICsgZGF0YVtyaWdodF0pKSAvIDIuMDtcbiAgICAvLyBGb3IgZWFjaCBwb2ludCBjb21wdXRlIHRoZSBtYXJnaW4gKHByb2plY3QgaW50byBub3JtYWwgdmVjdG9yKVxuICAgIC8vIElmIHdlIGFyZSBvbiBsb3dlciBzaWRlIG9mIHRoZSBoeXBlcnBsYW5lIHB1dCBpbiBvbmUgcGlsZSwgb3RoZXJ3aXNlXG4gICAgLy8gcHV0IGl0IGluIHRoZSBvdGhlciBwaWxlIChpZiB3ZSBoaXQgaHlwZXJwbGFuZSBvbiB0aGUgbm9zZSwgZmxpcCBhIGNvaW4pXG4gICAgbGV0IG5MZWZ0ID0gMDtcbiAgICBsZXQgblJpZ2h0ID0gMDtcbiAgICBjb25zdCBzaWRlID0gdXRpbHMuemVyb3MoaW5kaWNlcy5sZW5ndGgpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5kaWNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBsZXQgbWFyZ2luID0gaHlwZXJwbGFuZU9mZnNldDtcbiAgICAgICAgbWFyZ2luICs9IGh5cGVycGxhbmVWZWN0b3IgKiBkYXRhW2luZGljZXNbaV1dO1xuICAgICAgICBpZiAobWFyZ2luID09PSAwKSB7XG4gICAgICAgICAgICBzaWRlW2ldID0gdXRpbHMudGF1UmFuZEludCgyLCByYW5kb20pO1xuICAgICAgICAgICAgaWYgKHNpZGVbaV0gPT09IDApXG4gICAgICAgICAgICAgICAgbkxlZnQgKz0gMTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBuUmlnaHQgKz0gMTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChtYXJnaW4gPiAwKSB7XG4gICAgICAgICAgICBzaWRlW2ldID0gMDtcbiAgICAgICAgICAgIG5MZWZ0ICs9IDE7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBzaWRlW2ldID0gMTtcbiAgICAgICAgICAgIG5SaWdodCArPSAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIE5vdyB0aGF0IHdlIGhhdmUgdGhlIGNvdW50cywgYWxsb2NhdGUgYXJyYXlzXG4gICAgY29uc3QgaW5kaWNlc0xlZnQgPSB1dGlscy56ZXJvcyhuTGVmdCk7XG4gICAgY29uc3QgaW5kaWNlc1JpZ2h0ID0gdXRpbHMuemVyb3MoblJpZ2h0KTtcbiAgICAvLyBQb3B1bGF0ZSB0aGUgYXJyYXlzIHdpdGggaW5kaWNlcyBhY2NvcmRpbmcgdG8gd2hpY2ggc2lkZSB0aGV5IGZlbGwgb25cbiAgICBuTGVmdCA9IDA7XG4gICAgblJpZ2h0ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpZGUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKHNpZGVbaV0gPT09IDApIHtcbiAgICAgICAgICAgIGluZGljZXNMZWZ0W25MZWZ0XSA9IGluZGljZXNbaV07XG4gICAgICAgICAgICBuTGVmdCArPSAxO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgaW5kaWNlc1JpZ2h0W25SaWdodF0gPSBpbmRpY2VzW2ldO1xuICAgICAgICAgICAgblJpZ2h0ICs9IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgaW5kaWNlc0xlZnQsXG4gICAgICAgIGluZGljZXNSaWdodCxcbiAgICAgICAgaHlwZXJwbGFuZTogaHlwZXJwbGFuZVZlY3RvcixcbiAgICAgICAgb2Zmc2V0OiBoeXBlcnBsYW5lT2Zmc2V0LFxuICAgIH07XG59XG5mdW5jdGlvbiBmbGF0dGVuVHJlZSh0cmVlLCBsZWFmU2l6ZSkge1xuICAgIGNvbnN0IG5Ob2RlcyA9IG51bU5vZGVzKHRyZWUpO1xuICAgIGNvbnN0IG5MZWF2ZXMgPSBudW1MZWF2ZXModHJlZSk7XG4gICAgLy8gVE9ETzogVmVyaWZ5IHRoYXQgc3BhcnNlIGNvZGUgaXMgbm90IHJlbGV2YW50Li4uXG4gICAgY29uc3QgaHlwZXJwbGFuZXMgPSB1dGlsc1xuICAgICAgICAucmFuZ2Uobk5vZGVzKVxuICAgICAgICAubWFwKCgpID0+IHRyZWUuaHlwZXJwbGFuZSA/IDEgOiAwKTtcbiAgICBjb25zdCBvZmZzZXRzID0gdXRpbHMuemVyb3Mobk5vZGVzKTtcbiAgICBjb25zdCBjaGlsZHJlbiA9IHV0aWxzLnJhbmdlKG5Ob2RlcykubWFwKCgpID0+IFstMSwgLTFdKTtcbiAgICBjb25zdCBpbmRpY2VzID0gdXRpbHNcbiAgICAgICAgLnJhbmdlKG5MZWF2ZXMpXG4gICAgICAgIC5tYXAoKCkgPT4gdXRpbHMucmFuZ2UobGVhZlNpemUpLm1hcCgoKSA9PiAtMSkpO1xuICAgIHJlY3Vyc2l2ZUZsYXR0ZW4odHJlZSwgaHlwZXJwbGFuZXMsIG9mZnNldHMsIGNoaWxkcmVuLCBpbmRpY2VzLCAwLCAwKTtcbiAgICByZXR1cm4gbmV3IEZsYXRUcmVlKGh5cGVycGxhbmVzLCBvZmZzZXRzLCBjaGlsZHJlbiwgaW5kaWNlcyk7XG59XG5mdW5jdGlvbiByZWN1cnNpdmVGbGF0dGVuKHRyZWUsIGh5cGVycGxhbmVzLCBvZmZzZXRzLCBjaGlsZHJlbiwgaW5kaWNlcywgbm9kZU51bSwgbGVhZk51bSkge1xuICAgIGlmICh0cmVlLmlzTGVhZikge1xuICAgICAgICBjaGlsZHJlbltub2RlTnVtXVswXSA9IC1sZWFmTnVtO1xuICAgICAgICAvLyBUT0RPOiBUcmlwbGUgY2hlY2sgdGhpcyBvcGVyYXRpb24gY29ycmVzcG9uZHMgdG9cbiAgICAgICAgLy8gaW5kaWNlc1tsZWFmTnVtIDogdHJlZS5pbmRpY2VzLnNoYXBlWzBdXSA9IHRyZWUuaW5kaWNlc1xuICAgICAgICBpbmRpY2VzW2xlYWZOdW1dLnNwbGljZSgwLCB0cmVlLmluZGljZXMubGVuZ3RoLCAuLi50cmVlLmluZGljZXMpO1xuICAgICAgICBsZWFmTnVtICs9IDE7XG4gICAgICAgIHJldHVybiB7IG5vZGVOdW0sIGxlYWZOdW0gfTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGh5cGVycGxhbmVzW25vZGVOdW1dID0gdHJlZS5oeXBlcnBsYW5lO1xuICAgICAgICBvZmZzZXRzW25vZGVOdW1dID0gdHJlZS5vZmZzZXQ7XG4gICAgICAgIGNoaWxkcmVuW25vZGVOdW1dWzBdID0gbm9kZU51bSArIDE7XG4gICAgICAgIGNvbnN0IG9sZE5vZGVOdW0gPSBub2RlTnVtO1xuICAgICAgICBsZXQgcmVzID0gcmVjdXJzaXZlRmxhdHRlbih0cmVlLmxlZnRDaGlsZCwgaHlwZXJwbGFuZXMsIG9mZnNldHMsIGNoaWxkcmVuLCBpbmRpY2VzLCBub2RlTnVtICsgMSwgbGVhZk51bSk7XG4gICAgICAgIG5vZGVOdW0gPSByZXMubm9kZU51bTtcbiAgICAgICAgbGVhZk51bSA9IHJlcy5sZWFmTnVtO1xuICAgICAgICBjaGlsZHJlbltvbGROb2RlTnVtXVsxXSA9IG5vZGVOdW0gKyAxO1xuICAgICAgICByZXMgPSByZWN1cnNpdmVGbGF0dGVuKHRyZWUucmlnaHRDaGlsZCwgaHlwZXJwbGFuZXMsIG9mZnNldHMsIGNoaWxkcmVuLCBpbmRpY2VzLCBub2RlTnVtICsgMSwgbGVhZk51bSk7XG4gICAgICAgIHJldHVybiB7IG5vZGVOdW06IHJlcy5ub2RlTnVtLCBsZWFmTnVtOiByZXMubGVhZk51bSB9O1xuICAgIH1cbn1cbmZ1bmN0aW9uIG51bU5vZGVzKHRyZWUpIHtcbiAgICBpZiAodHJlZS5pc0xlYWYpXG4gICAgICAgIHJldHVybiAxO1xuICAgIGVsc2VcbiAgICAgICAgcmV0dXJuIDEgKyBudW1Ob2Rlcyh0cmVlLmxlZnRDaGlsZCkgKyBudW1Ob2Rlcyh0cmVlLnJpZ2h0Q2hpbGQpO1xufVxuZnVuY3Rpb24gbnVtTGVhdmVzKHRyZWUpIHtcbiAgICBpZiAodHJlZS5pc0xlYWYpXG4gICAgICAgIHJldHVybiAxO1xuICAgIGVsc2VcbiAgICAgICAgcmV0dXJuIG51bUxlYXZlcyh0cmVlLmxlZnRDaGlsZCkgKyBudW1MZWF2ZXModHJlZS5yaWdodENoaWxkKTtcbn1cbi8qKlxuICogR2VuZXJhdGUgYW4gYXJyYXkgb2Ygc2V0cyBvZiBjYW5kaWRhdGUgbmVhcmVzdCBuZWlnaGJvcnMgYnlcbiAqIGNvbnN0cnVjdGluZyBhIHJhbmRvbSBwcm9qZWN0aW9uIGZvcmVzdCBhbmQgdGFraW5nIHRoZSBsZWF2ZXMgb2YgYWxsIHRoZVxuICogdHJlZXMuIEFueSBnaXZlbiB0cmVlIGhhcyBsZWF2ZXMgdGhhdCBhcmUgYSBzZXQgb2YgcG90ZW50aWFsIG5lYXJlc3RcbiAqIG5laWdoYm9ycy4gR2l2ZW4gZW5vdWdoIHRyZWVzIHRoZSBzZXQgb2YgYWxsIHN1Y2ggbGVhdmVzIGdpdmVzIGEgZ29vZFxuICogbGlrZWxpaG9vZCBvZiBnZXR0aW5nIGEgZ29vZCBzZXQgb2YgbmVhcmVzdCBuZWlnaGJvcnMgaW4gY29tcG9zaXRlLiBTaW5jZVxuICogc3VjaCBhIHJhbmRvbSBwcm9qZWN0aW9uIGZvcmVzdCBpcyBpbmV4cGVuc2l2ZSB0byBjb21wdXRlLCB0aGlzIGNhbiBiZSBhXG4gKiB1c2VmdWwgbWVhbnMgb2Ygc2VlZGluZyBvdGhlciBuZWFyZXN0IG5laWdoYm9yIGFsZ29yaXRobXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYWtlTGVhZkFycmF5KHJwRm9yZXN0KSB7XG4gICAgaWYgKHJwRm9yZXN0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3Qgb3V0cHV0ID0gW107XG4gICAgICAgIGZvciAoY29uc3QgdHJlZSBvZiBycEZvcmVzdClcbiAgICAgICAgICAgIG91dHB1dC5wdXNoKC4uLnRyZWUuaW5kaWNlcyk7XG4gICAgICAgIHJldHVybiBvdXRwdXQ7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gW1stMV1dO1xuICAgIH1cbn1cbi8qKlxuICogU2VsZWN0cyB0aGUgc2lkZSBvZiB0aGUgdHJlZSB0byBzZWFyY2ggZHVyaW5nIGZsYXQgdHJlZSBzZWFyY2guXG4gKi9cbmZ1bmN0aW9uIHNlbGVjdFNpZGUoaHlwZXJwbGFuZSwgb2Zmc2V0LCBwb2ludCwgcmFuZG9tKSB7XG4gICAgbGV0IG1hcmdpbiA9IG9mZnNldDtcbiAgICBtYXJnaW4gKz0gaHlwZXJwbGFuZSAqIHBvaW50O1xuICAgIGlmIChtYXJnaW4gPT09IDApIHtcbiAgICAgICAgY29uc3Qgc2lkZSA9IHV0aWxzLnRhdVJhbmRJbnQoMiwgcmFuZG9tKTtcbiAgICAgICAgcmV0dXJuIHNpZGU7XG4gICAgfVxuICAgIGVsc2UgaWYgKG1hcmdpbiA+IDApIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICByZXR1cm4gMTtcbiAgICB9XG59XG4vKipcbiAqIFNlYXJjaGVzIGEgZmxhdHRlbmVkIHJwLXRyZWUgZm9yIGEgcG9pbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZWFyY2hGbGF0VHJlZShwb2ludCwgdHJlZSwgcmFuZG9tKSB7XG4gICAgbGV0IG5vZGUgPSAwO1xuICAgIHdoaWxlICh0cmVlLmNoaWxkcmVuW25vZGVdWzBdID4gMCkge1xuICAgICAgICBjb25zdCBzaWRlID0gc2VsZWN0U2lkZSh0cmVlLmh5cGVycGxhbmVzW25vZGVdLCB0cmVlLm9mZnNldHNbbm9kZV0sIHBvaW50LCByYW5kb20pO1xuICAgICAgICBpZiAoc2lkZSA9PT0gMClcbiAgICAgICAgICAgIG5vZGUgPSB0cmVlLmNoaWxkcmVuW25vZGVdWzBdO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBub2RlID0gdHJlZS5jaGlsZHJlbltub2RlXVsxXTtcbiAgICB9XG4gICAgY29uc3QgaW5kZXggPSAtMSAqIHRyZWUuY2hpbGRyZW5bbm9kZV1bMF07XG4gICAgcmV0dXJuIHRyZWUuaW5kaWNlc1tpbmRleF07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkSEpsWlM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJblJ5WldVdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUU3T3pzN096czdPenM3T3pzN096czdPMGRCYVVKSE8wRkJSVWc3T3pzN08wZEJTMGM3UVVGRlNEczdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenRIUVN0Q1J6dEJRVVZJTEU5QlFVOHNTMEZCU3l4TFFVRkxMRTFCUVUwc1UwRkJVeXhEUVVGRE8wRkJaV3BETEUxQlFVMHNUMEZCVHl4UlFVRlJPMGxCUlZZN1NVRkRRVHRKUVVOQk8wbEJRMEU3U1VGS1ZDeFpRVU5UTEZkQlFYRkNMRVZCUTNKQ0xFOUJRV2xDTEVWQlEycENMRkZCUVc5Q0xFVkJRM0JDTEU5QlFXMUNPMUZCU0c1Q0xHZENRVUZYTEVkQlFWZ3NWMEZCVnl4RFFVRlZPMUZCUTNKQ0xGbEJRVThzUjBGQlVDeFBRVUZQTEVOQlFWVTdVVUZEYWtJc1lVRkJVU3hIUVVGU0xGRkJRVkVzUTBGQldUdFJRVU53UWl4WlFVRlBMRWRCUVZBc1QwRkJUeXhEUVVGWk8wbEJRM3BDTEVOQlFVTTdRMEZEVER0QlFVVkVPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEZWQlFWVXNRMEZEZUVJc1NVRkJXU3hGUVVOYUxGVkJRV3RDTEVWQlEyeENMRTFCUVdNc1JVRkRaQ3hOUVVGblFqdEpRVVZvUWl4TlFVRk5MRkZCUVZFc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNSVUZCUlN4VlFVRlZMRU5CUVVNc1EwRkJRenRKUVVVeFF5eE5RVUZOTEV0QlFVc3NSMEZCUnl4TFFVRkxPMU5CUTJoQ0xFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTTdVMEZEWWl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4UlFVRlJMRU5CUVVNc1NVRkJTU3hGUVVGRkxGRkJRVkVzUlVGQlJTeERRVUZETEVWQlFVVXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVOMFJDeE5RVUZOTEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zU1VGQlNTeEZRVUZGTEVWQlFVVXNRMEZCUXl4WFFVRlhMRU5CUVVNc1NVRkJTU3hGUVVGRkxGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZGYUVVc1QwRkJUeXhOUVVGTkxFTkJRVU03UVVGRGFFSXNRMEZCUXp0QlFVVkVPenM3UjBGSFJ6dEJRVU5JTEZOQlFWTXNVVUZCVVN4RFFVTm1MRWxCUVZrc1JVRkRXaXhSUVVGUkxFZEJRVWNzUlVGQlJTeEZRVU5pTEVOQlFWTXNSVUZEVkN4TlFVRm5RanRKUVVWb1FpeE5RVUZOTEU5QlFVOHNSMEZCUnl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTjZReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eHBRa0ZCYVVJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eEZRVUZGTEZGQlFWRXNSVUZCUlN4RFFVRkRMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGRGJrVXNUMEZCVHl4SlFVRkpMRU5CUVVNN1FVRkRaQ3hEUVVGRE8wRkJSVVFzVTBGQlV5eHBRa0ZCYVVJc1EwRkRlRUlzU1VGQldTeEZRVU5hTEU5QlFXbENMRVZCUTJwQ0xGRkJRVkVzUjBGQlJ5eEZRVUZGTEVWQlEySXNRMEZCVXl4RlFVTlVMRTFCUVdkQ08wbEJSV2hDTEVsQlFVa3NUMEZCVHl4RFFVRkRMRTFCUVUwc1IwRkJSeXhSUVVGUkxFVkJRVVU3VVVGRE4wSXNUVUZCVFN4WlFVRlpMRWRCUVVjc09FSkJRVGhDTEVOQlFVTXNTVUZCU1N4RlFVRkZMRTlCUVU4c1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVU16UlN4TlFVRk5MRVZCUVVNc1YwRkJWeXhGUVVGRkxGbEJRVmtzUlVGQlJTeFZRVUZWTEVWQlFVVXNUVUZCVFN4RlFVRkRMRWRCUVVjc1dVRkJXU3hEUVVGRE8xRkJSWEpGTEUxQlFVMHNVMEZCVXl4SFFVRkhMR2xDUVVGcFFpeERRVU5xUXl4SlFVRkpMRVZCUTBvc1YwRkJWeXhGUVVOWUxGRkJRVkVzUlVGRFVpeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVTk1MRTFCUVUwc1EwRkRVQ3hEUVVGRE8xRkJRMFlzVFVGQlRTeFZRVUZWTEVkQlFVY3NhVUpCUVdsQ0xFTkJRMnhETEVsQlFVa3NSVUZEU2l4WlFVRlpMRVZCUTFvc1VVRkJVU3hGUVVOU0xFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlEwd3NUVUZCVFN4RFFVTlFMRU5CUVVNN1VVRkZSaXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEZRVUZETEZOQlFWTXNSVUZCUlN4VlFVRlZMRVZCUVVVc1RVRkJUU3hGUVVGRkxFdEJRVXNzUlVGQlJTeFZRVUZWTEVWQlFVVXNUVUZCVFN4RlFVRkRMRU5CUVVNN1VVRkRlRVVzVDBGQlR5eEpRVUZKTEVOQlFVTTdTMEZEWWp0VFFVRk5PMUZCUTB3c1RVRkJUU3hKUVVGSkxFZEJRVWNzUlVGQlF5eFBRVUZQTEVWQlFVVXNUVUZCVFN4RlFVRkZMRWxCUVVrc1JVRkJReXhEUVVGRE8xRkJRM0pETEU5QlFVOHNTVUZCU1N4RFFVRkRPMHRCUTJJN1FVRkRTQ3hEUVVGRE8wRkJSVVE3T3pzN096czdSMEZQUnp0QlFVTklMRk5CUVZNc09FSkJRVGhDTEVOQlEzSkRMRWxCUVZrc1JVRkRXaXhQUVVGcFFpeEZRVU5xUWl4TlFVRm5RanRKUVVWb1FpeG5Ra0ZCWjBJN1NVRkZhRUlzTkVSQlFUUkVPMGxCUXpWRUxFMUJRVTBzVTBGQlV5eEhRVUZITEV0QlFVc3NRMEZCUXl4VlFVRlZMRU5CUVVNc1QwRkJUeXhEUVVGRExFMUJRVTBzUlVGQlJTeE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTXpSQ3hKUVVGSkxGVkJRVlVzUjBGQlJ5eExRVUZMTEVOQlFVTXNWVUZCVlN4RFFVRkRMRTlCUVU4c1EwRkJReXhOUVVGTkxFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdTVUZETVVRc1ZVRkJWU3hKUVVGSkxGTkJRVk1zUzBGQlN5eFZRVUZWTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlF5OURMRlZCUVZVc1IwRkJSeXhWUVVGVkxFZEJRVWNzVDBGQlR5eERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTjZReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eFBRVUZQTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNN1NVRkRhRU1zVFVGQlRTeExRVUZMTEVkQlFVY3NUMEZCVHl4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRE8wbEJSV3hETERCRlFVRXdSVHRKUVVNeFJTeDVRMEZCZVVNN1NVRkRla01zU1VGQlNTeG5Ra0ZCWjBJc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRGVrSXNTVUZCU1N4blFrRkJaMElzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZIZWtJc1owSkJRV2RDTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0SlFVTTFReXhuUWtGQlowSTdVVUZEWkN4RFFVRkRMR2RDUVVGblFpeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRE8wbEJSM2hFTEdsRlFVRnBSVHRKUVVOcVJTeDFSVUZCZFVVN1NVRkRka1VzTWtWQlFUSkZPMGxCUXpORkxFbEJRVWtzUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTmtMRWxCUVVrc1RVRkJUU3hIUVVGSExFTkJRVU1zUTBGQlF6dEpRVU5tTEUxQlFVMHNTVUZCU1N4SFFVRkhMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMGxCUTNwRExFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMUZCUTNaRExFbEJRVWtzVFVGQlRTeEhRVUZITEdkQ1FVRm5RaXhEUVVGRE8xRkJSVGxDTEUxQlFVMHNTVUZCU1N4blFrRkJaMElzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRk9VTXNTVUZCU1N4TlFVRk5MRXRCUVVzc1EwRkJReXhGUVVGRk8xbEJRMmhDTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTXNSVUZCUlN4TlFVRk5MRU5CUVVNc1EwRkJRenRaUVVOMFF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhEUVVGRE8yZENRVU5tTEV0QlFVc3NTVUZCU1N4RFFVRkRMRU5CUVVNN08yZENRVVZZTEUxQlFVMHNTVUZCU1N4RFFVRkRMRU5CUVVNN1UwRkRaanRoUVVGTkxFbEJRVWtzVFVGQlRTeEhRVUZITEVOQlFVTXNSVUZCUlR0WlFVTnlRaXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUTFvc1MwRkJTeXhKUVVGSkxFTkJRVU1zUTBGQlF6dFRRVU5hTzJGQlFVMDdXVUZEVEN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFsQlExb3NUVUZCVFN4SlFVRkpMRU5CUVVNc1EwRkJRenRUUVVOaU8wdEJRMFk3U1VGRlJDd3JRMEZCSzBNN1NVRkRMME1zVFVGQlRTeFhRVUZYTEVkQlFVY3NTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dEpRVU4yUXl4TlFVRk5MRmxCUVZrc1IwRkJSeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMGxCUlhwRExIZEZRVUYzUlR0SlFVTjRSU3hMUVVGTExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlExWXNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVOWUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMUZCUTNCRExFbEJRVWtzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1JVRkJSVHRaUVVOcVFpeFhRVUZYTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWRCUVVjc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEyaERMRXRCUVVzc1NVRkJTU3hEUVVGRExFTkJRVU03VTBGRFdqdGhRVUZOTzFsQlEwd3NXVUZCV1N4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTnNReXhOUVVGTkxFbEJRVWtzUTBGQlF5eERRVUZETzFOQlEySTdTMEZEUmp0SlFVVkVMRTlCUVU4N1VVRkRUQ3hYUVVGWE8xRkJRMWdzV1VGQldUdFJRVU5hTEZWQlFWVXNSVUZCUlN4blFrRkJaMEk3VVVGRE5VSXNUVUZCVFN4RlFVRkZMR2RDUVVGblFqdExRVU42UWl4RFFVRkRPMEZCUTBvc1EwRkJRenRCUVVWRUxGTkJRVk1zVjBGQlZ5eERRVUZETEVsQlFUaENMRVZCUVVVc1VVRkJaMEk3U1VGRGJrVXNUVUZCVFN4TlFVRk5MRWRCUVVjc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBsQlF6bENMRTFCUVUwc1QwRkJUeXhIUVVGSExGTkJRVk1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVVm9ReXh0UkVGQmJVUTdTVUZEYmtRc1RVRkJUU3hYUVVGWExFZEJRVWNzUzBGQlN6dFRRVU4wUWl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRE8xTkJRMklzUjBGQlJ5eERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmRFTXNUVUZCVFN4UFFVRlBMRWRCUVVjc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTndReXhOUVVGTkxGRkJRVkVzUjBGQlJ5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjZSQ3hOUVVGTkxFOUJRVThzUjBGQlJ5eExRVUZMTzFOQlEyeENMRXRCUVVzc1EwRkJReXhQUVVGUExFTkJRVU03VTBGRFpDeEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTJ4RUxHZENRVUZuUWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hYUVVGWExFVkJRVVVzVDBGQlR5eEZRVUZGTEZGQlFWRXNSVUZCUlN4UFFVRlBMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzUkZMRTlCUVU4c1NVRkJTU3hSUVVGUkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEU5QlFVOHNSVUZCUlN4UlFVRlJMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU03UVVGREwwUXNRMEZCUXp0QlFVVkVMRk5CUVZNc1owSkJRV2RDTEVOQlEzWkNMRWxCUVRoQ0xFVkJRemxDTEZkQlFYRkNMRVZCUTNKQ0xFOUJRV2xDTEVWQlEycENMRkZCUVc5Q0xFVkJRM0JDTEU5QlFXMUNMRVZCUTI1Q0xFOUJRV1VzUlVGRFppeFBRVUZsTzBsQlJXWXNTVUZCU1N4SlFVRkpMRU5CUVVNc1RVRkJUU3hGUVVGRk8xRkJRMllzVVVGQlVTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETzFGQlJXaERMRzFFUVVGdFJEdFJRVU51UkN3d1JFRkJNRVE3VVVGRE1VUXNUMEZCVHl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRTlCUVZFc1EwRkJReXhOUVVGTkxFVkJRVVVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVVN4RFFVRkRMRU5CUVVNN1VVRkRia1VzVDBGQlR5eEpRVUZKTEVOQlFVTXNRMEZCUXp0UlFVTmlMRTlCUVU4c1JVRkJReXhQUVVGUExFVkJRVVVzVDBGQlR5eEZRVUZETEVOQlFVTTdTMEZETTBJN1UwRkJUVHRSUVVOTUxGZEJRVmNzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWeXhEUVVGRE8xRkJRM2hETEU5QlFVOHNRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlR5eERRVUZETzFGQlEyaERMRkZCUVZFc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4UFFVRlBMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRMjVETEUxQlFVMHNWVUZCVlN4SFFVRkhMRTlCUVU4c1EwRkJRenRSUVVVelFpeEpRVUZKTEVkQlFVY3NSMEZCUnl4blFrRkJaMElzUTBGRGVFSXNTVUZCU1N4RFFVRkRMRk5CUVZVc1JVRkRaaXhYUVVGWExFVkJRMWdzVDBGQlR5eEZRVU5RTEZGQlFWRXNSVUZEVWl4UFFVRlBMRVZCUTFBc1QwRkJUeXhIUVVGSExFTkJRVU1zUlVGRFdDeFBRVUZQTEVOQlExSXNRMEZCUXp0UlFVTkdMRTlCUVU4c1IwRkJSeXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETzFGQlEzUkNMRTlCUVU4c1IwRkJSeXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETzFGQlJYUkNMRkZCUVZFc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4UFFVRlBMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJSWFJETEVkQlFVY3NSMEZCUnl4blFrRkJaMElzUTBGRGNFSXNTVUZCU1N4RFFVRkRMRlZCUVZjc1JVRkRhRUlzVjBGQlZ5eEZRVU5ZTEU5QlFVOHNSVUZEVUN4UlFVRlJMRVZCUTFJc1QwRkJUeXhGUVVOUUxFOUJRVThzUjBGQlJ5eERRVUZETEVWQlExZ3NUMEZCVHl4RFFVTlNMRU5CUVVNN1VVRkRSaXhQUVVGUExFVkJRVU1zVDBGQlR5eEZRVUZGTEVkQlFVY3NRMEZCUXl4UFFVRlBMRVZCUVVVc1QwRkJUeXhGUVVGRkxFZEJRVWNzUTBGQlF5eFBRVUZQTEVWQlFVTXNRMEZCUXp0TFFVTnlSRHRCUVVOSUxFTkJRVU03UVVGRlJDeFRRVUZUTEZGQlFWRXNRMEZCUXl4SlFVRTRRanRKUVVNNVF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4TlFVRk5PMUZCUTJJc1QwRkJUeXhEUVVGRExFTkJRVU03TzFGQlJWUXNUMEZCVHl4RFFVRkRMRWRCUVVjc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eFRRVUZWTEVOQlFVTXNSMEZCUnl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVmNzUTBGQlF5eERRVUZETzBGQlEzUkZMRU5CUVVNN1FVRkZSQ3hUUVVGVExGTkJRVk1zUTBGQlF5eEpRVUU0UWp0SlFVTXZReXhKUVVGSkxFbEJRVWtzUTBGQlF5eE5RVUZOTzFGQlEySXNUMEZCVHl4RFFVRkRMRU5CUVVNN08xRkJSVlFzVDBGQlR5eFRRVUZUTEVOQlFVTXNTVUZCU1N4RFFVRkRMRk5CUVZVc1EwRkJReXhIUVVGSExGTkJRVk1zUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVnl4RFFVRkRMRU5CUVVNN1FVRkRjRVVzUTBGQlF6dEJRVVZFT3pzN096czdPenRIUVZGSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdGQlFXRXNRMEZCUXl4UlFVRnZRanRKUVVOb1JDeEpRVUZKTEZGQlFWRXNRMEZCUXl4TlFVRk5MRWRCUVVjc1EwRkJReXhGUVVGRk8xRkJRM1pDTEUxQlFVMHNUVUZCVFN4SFFVRmxMRVZCUVVVc1EwRkJRenRSUVVNNVFpeExRVUZMTEUxQlFVMHNTVUZCU1N4SlFVRkpMRkZCUVZFN1dVRkRla0lzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhQUVVGUkxFTkJRVU1zUTBGQlF6dFJRVVZvUXl4UFFVRlBMRTFCUVUwc1EwRkJRenRMUVVObU8xTkJRVTA3VVVGRFRDeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UzBGRFpqdEJRVU5JTEVOQlFVTTdRVUZGUkRzN1IwRkZSenRCUVVOSUxGTkJRVk1zVlVGQlZTeERRVU5xUWl4VlFVRnJRaXhGUVVOc1FpeE5RVUZqTEVWQlEyUXNTMEZCWVN4RlFVTmlMRTFCUVdkQ08wbEJSV2hDTEVsQlFVa3NUVUZCVFN4SFFVRkhMRTFCUVUwc1EwRkJRenRKUVVWd1FpeE5RVUZOTEVsQlFVa3NWVUZCVlN4SFFVRkhMRXRCUVVzc1EwRkJRenRKUVVjM1FpeEpRVUZKTEUxQlFVMHNTMEZCU3l4RFFVRkRMRVZCUVVVN1VVRkRhRUlzVFVGQlRTeEpRVUZKTEVkQlFVY3NTMEZCU3l4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdVVUZEZWtNc1QwRkJUeXhKUVVGSkxFTkJRVU03UzBGRFlqdFRRVUZOTEVsQlFVa3NUVUZCVFN4SFFVRkhMRU5CUVVNc1JVRkJSVHRSUVVOeVFpeFBRVUZQTEVOQlFVTXNRMEZCUXp0TFFVTldPMU5CUVUwN1VVRkRUQ3hQUVVGUExFTkJRVU1zUTBGQlF6dExRVU5XTzBGQlEwZ3NRMEZCUXp0QlFVVkVPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdOQlFXTXNRMEZETlVJc1MwRkJZU3hGUVVOaUxFbEJRV01zUlVGRFpDeE5RVUZuUWp0SlFVVm9RaXhKUVVGSkxFbEJRVWtzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZEWWl4UFFVRlBMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRk8xRkJRMnBETEUxQlFVMHNTVUZCU1N4SFFVRkhMRlZCUVZVc1EwRkRja0lzU1VGQlNTeERRVUZETEZkQlFWY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkRkRUlzU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkRiRUlzUzBGQlN5eEZRVU5NTEUxQlFVMHNRMEZEVUN4RFFVRkRPMUZCUTBZc1NVRkJTU3hKUVVGSkxFdEJRVXNzUTBGQlF6dFpRVU5hTEVsQlFVa3NSMEZCUnl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPenRaUVVVNVFpeEpRVUZKTEVkQlFVY3NTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0TFFVTnFRenRKUVVWRUxFMUJRVTBzUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRNVU1zVDBGQlR5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRemRDTEVOQlFVTWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUl2S2lwY2JpQXFJRUJzYVdObGJuTmxYRzRnS2x4dUlDb2dRMjl3ZVhKcFoyaDBJREl3TVRrZ1IyOXZaMnhsSUV4TVF5NGdRV3hzSUZKcFoyaDBjeUJTWlhObGNuWmxaQzVjYmlBcVhHNGdLaUJNYVdObGJuTmxaQ0IxYm1SbGNpQjBhR1VnUVhCaFkyaGxJRXhwWTJWdWMyVXNJRlpsY25OcGIyNGdNaTR3SUNoMGFHVWdYQ0pNYVdObGJuTmxYQ0lwTzF4dUlDb2dlVzkxSUcxaGVTQnViM1FnZFhObElIUm9hWE1nWm1sc1pTQmxlR05sY0hRZ2FXNGdZMjl0Y0d4cFlXNWpaU0IzYVhSb0lIUm9aU0JNYVdObGJuTmxMbHh1SUNvZ1dXOTFJRzFoZVNCdlluUmhhVzRnWVNCamIzQjVJRzltSUhSb1pTQk1hV05sYm5ObElHRjBYRzRnS2x4dUlDb2dJQ0FnSUdoMGRIQTZMeTkzZDNjdVlYQmhZMmhsTG05eVp5OXNhV05sYm5ObGN5OU1TVU5GVGxORkxUSXVNRnh1SUNwY2JpQXFJRlZ1YkdWemN5QnlaWEYxYVhKbFpDQmllU0JoY0hCc2FXTmhZbXhsSUd4aGR5QnZjaUJoWjNKbFpXUWdkRzhnYVc0Z2QzSnBkR2x1Wnl3Z2MyOW1kSGRoY21WY2JpQXFJR1JwYzNSeWFXSjFkR1ZrSUhWdVpHVnlJSFJvWlNCTWFXTmxibk5sSUdseklHUnBjM1J5YVdKMWRHVmtJRzl1SUdGdUlGd2lRVk1nU1ZOY0lpQkNRVk5KVXl4Y2JpQXFJRmRKVkVoUFZWUWdWMEZTVWtGT1ZFbEZVeUJQVWlCRFQwNUVTVlJKVDA1VElFOUdJRUZPV1NCTFNVNUVMQ0JsYVhSb1pYSWdaWGh3Y21WemN5QnZjaUJwYlhCc2FXVmtMbHh1SUNvZ1UyVmxJSFJvWlNCTWFXTmxibk5sSUdadmNpQjBhR1VnYzNCbFkybG1hV01nYkdGdVozVmhaMlVnWjI5MlpYSnVhVzVuSUhCbGNtMXBjM05wYjI1eklHRnVaRnh1SUNvZ2JHbHRhWFJoZEdsdmJuTWdkVzVrWlhJZ2RHaGxJRXhwWTJWdWMyVXVYRzRnS2lBOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDFjYmlBcUwxeHVYRzR2S2lwY2JpQXFJRlJvYVhNZ2FYTWdZU0JLWVhaaFUyTnlhWEIwSUhKbGFXMXdiR1Z0Wlc1MFlYUnBiMjRnYjJZZ1ZVMUJVQ0FvYjNKcFoybHVZV3dnYkdsalpXNXpaU0JpWld4dmR5a3NJR1p5YjIxY2JpQXFJSFJvWlNCd2VYUm9iMjRnYVcxd2JHVnRaVzUwWVhScGIyNGdabTkxYm1RZ1lYUWdhSFIwY0hNNkx5OW5hWFJvZFdJdVkyOXRMMnh0WTJsdWJtVnpMM1Z0WVhBdVhHNGdLbHh1SUNvZ1FHRjFkR2h2Y2lCaGJtUjVZMjlsYm1WdVFHZHZiMmRzWlM1amIyMGdLRUZ1WkhrZ1EyOWxibVZ1S1Z4dUlDb3ZYRzVjYmk4cUtseHVJQ29nUUd4cFkyVnVjMlZjYmlBcUlFSlRSQ0F6TFVOc1lYVnpaU0JNYVdObGJuTmxYRzRnS2x4dUlDb2dRMjl3ZVhKcFoyaDBJQ2hqS1NBeU1ERTNMQ0JNWld4aGJtUWdUV05KYm01bGMxeHVJQ29nUVd4c0lISnBaMmgwY3lCeVpYTmxjblpsWkM1Y2JpQXFYRzRnS2lCU1pXUnBjM1J5YVdKMWRHbHZiaUJoYm1RZ2RYTmxJR2x1SUhOdmRYSmpaU0JoYm1RZ1ltbHVZWEo1SUdadmNtMXpMQ0IzYVhSb0lHOXlJSGRwZEdodmRYUmNiaUFxSUcxdlpHbG1hV05oZEdsdmJpd2dZWEpsSUhCbGNtMXBkSFJsWkNCd2NtOTJhV1JsWkNCMGFHRjBJSFJvWlNCbWIyeHNiM2RwYm1jZ1kyOXVaR2wwYVc5dWN5QmhjbVVnYldWME9seHVJQ3BjYmlBcUlDb2dVbVZrYVhOMGNtbGlkWFJwYjI1eklHOW1JSE52ZFhKalpTQmpiMlJsSUcxMWMzUWdjbVYwWVdsdUlIUm9aU0JoWW05MlpTQmpiM0I1Y21sbmFIUWdibTkwYVdObExDQjBhR2x6WEc0Z0tpQWdJR3hwYzNRZ2IyWWdZMjl1WkdsMGFXOXVjeUJoYm1RZ2RHaGxJR1p2Ykd4dmQybHVaeUJrYVhOamJHRnBiV1Z5TGx4dUlDcGNiaUFxSUNvZ1VtVmthWE4wY21saWRYUnBiMjV6SUdsdUlHSnBibUZ5ZVNCbWIzSnRJRzExYzNRZ2NtVndjbTlrZFdObElIUm9aU0JoWW05MlpTQmpiM0I1Y21sbmFIUWdibTkwYVdObExGeHVJQ29nSUNCMGFHbHpJR3hwYzNRZ2IyWWdZMjl1WkdsMGFXOXVjeUJoYm1RZ2RHaGxJR1p2Ykd4dmQybHVaeUJrYVhOamJHRnBiV1Z5SUdsdUlIUm9aU0JrYjJOMWJXVnVkR0YwYVc5dVhHNGdLaUFnSUdGdVpDOXZjaUJ2ZEdobGNpQnRZWFJsY21saGJITWdjSEp2ZG1sa1pXUWdkMmwwYUNCMGFHVWdaR2x6ZEhKcFluVjBhVzl1TGx4dUlDcGNiaUFxSUNvZ1RtVnBkR2hsY2lCMGFHVWdibUZ0WlNCdlppQjBhR1VnWTI5d2VYSnBaMmgwSUdodmJHUmxjaUJ1YjNJZ2RHaGxJRzVoYldWeklHOW1JR2wwYzF4dUlDb2dJQ0JqYjI1MGNtbGlkWFJ2Y25NZ2JXRjVJR0psSUhWelpXUWdkRzhnWlc1a2IzSnpaU0J2Y2lCd2NtOXRiM1JsSUhCeWIyUjFZM1J6SUdSbGNtbDJaV1FnWm5KdmJWeHVJQ29nSUNCMGFHbHpJSE52Wm5SM1lYSmxJSGRwZEdodmRYUWdjM0JsWTJsbWFXTWdjSEpwYjNJZ2QzSnBkSFJsYmlCd1pYSnRhWE56YVc5dUxseHVJQ3BjYmlBcUlGUklTVk1nVTA5R1ZGZEJVa1VnU1ZNZ1VGSlBWa2xFUlVRZ1Fsa2dWRWhGSUVOUFVGbFNTVWRJVkNCSVQweEVSVkpUSUVGT1JDQkRUMDVVVWtsQ1ZWUlBVbE1nWENKQlV5QkpVMXdpWEc0Z0tpQkJUa1FnUVU1WklFVllVRkpGVTFNZ1QxSWdTVTFRVEVsRlJDQlhRVkpTUVU1VVNVVlRMQ0JKVGtOTVZVUkpUa2NzSUVKVlZDQk9UMVFnVEVsTlNWUkZSQ0JVVHl3Z1ZFaEZYRzRnS2lCSlRWQk1TVVZFSUZkQlVsSkJUbFJKUlZNZ1QwWWdUVVZTUTBoQlRsUkJRa2xNU1ZSWklFRk9SQ0JHU1ZST1JWTlRJRVpQVWlCQklGQkJVbFJKUTFWTVFWSWdVRlZTVUU5VFJTQkJVa1ZjYmlBcUlFUkpVME5NUVVsTlJVUXVJRWxPSUU1UElFVldSVTVVSUZOSVFVeE1JRlJJUlNCRFQxQlpVa2xIU0ZRZ1NFOU1SRVZTSUU5U0lFTlBUbFJTU1VKVlZFOVNVeUJDUlNCTVNVRkNURVZjYmlBcUlFWlBVaUJCVGxrZ1JFbFNSVU5VTENCSlRrUkpVa1ZEVkN3Z1NVNURTVVJGVGxSQlRDd2dVMUJGUTBsQlRDd2dSVmhGVFZCTVFWSlpMQ0JQVWlCRFQwNVRSVkZWUlU1VVNVRk1YRzRnS2lCRVFVMUJSMFZUSUNoSlRrTk1WVVJKVGtjc0lFSlZWQ0JPVDFRZ1RFbE5TVlJGUkNCVVR5d2dVRkpQUTFWU1JVMUZUbFFnVDBZZ1UxVkNVMVJKVkZWVVJTQkhUMDlFVXlCUFVseHVJQ29nVTBWU1ZrbERSVk03SUV4UFUxTWdUMFlnVlZORkxDQkVRVlJCTENCUFVpQlFVazlHU1ZSVE95QlBVaUJDVlZOSlRrVlRVeUJKVGxSRlVsSlZVRlJKVDA0cElFaFBWMFZXUlZKY2JpQXFJRU5CVlZORlJDQkJUa1FnVDA0Z1FVNVpJRlJJUlU5U1dTQlBSaUJNU1VGQ1NVeEpWRmtzSUZkSVJWUklSVklnU1U0Z1EwOU9WRkpCUTFRc0lGTlVVa2xEVkNCTVNVRkNTVXhKVkZrc1hHNGdLaUJQVWlCVVQxSlVJQ2hKVGtOTVZVUkpUa2NnVGtWSFRFbEhSVTVEUlNCUFVpQlBWRWhGVWxkSlUwVXBJRUZTU1ZOSlRrY2dTVTRnUVU1WklGZEJXU0JQVlZRZ1QwWWdWRWhGSUZWVFJWeHVJQ29nVDBZZ1ZFaEpVeUJUVDBaVVYwRlNSU3dnUlZaRlRpQkpSaUJCUkZaSlUwVkVJRTlHSUZSSVJTQlFUMU5UU1VKSlRFbFVXU0JQUmlCVFZVTklJRVJCVFVGSFJTNWNiaUFxTDF4dVhHNXBiWEJ2Y25RZ0tpQmhjeUIxZEdsc2N5Qm1jbTl0SUNjdUwzVjBhV3h6Snp0Y2JtbHRjRzl5ZENCN1VtRnVaRzl0Um00c0lGWmxZM1J2Y24wZ1puSnZiU0FuTGk5MWJXRndKenRjYmx4dUx5b3FYRzRnS2lCVWNtVmxJR1oxYm1OMGFXOXVZV3hwZEhrZ1ptOXlJR0Z3Y0hKdmVHbHRZWFJwYm1jZ2JtVmhjbVZ6ZENCdVpXbG5hR0p2Y25OY2JpQXFMMXh1YVc1MFpYSm1ZV05sSUZKaGJtUnZiVkJ5YjJwbFkzUnBiMjVVY21WbFRtOWtaU0I3WEc0Z0lHbHpUR1ZoWmpvZ1ltOXZiR1ZoYmp0Y2JpQWdhVzVrYVdObGN6ODZJRzUxYldKbGNsdGRPMXh1SUNCc1pXWjBRMmhwYkdRL09pQlNZVzVrYjIxUWNtOXFaV04wYVc5dVZISmxaVTV2WkdVN1hHNGdJSEpwWjJoMFEyaHBiR1EvT2lCU1lXNWtiMjFRY205cVpXTjBhVzl1VkhKbFpVNXZaR1U3WEc0Z0lHaDVjR1Z5Y0d4aGJtVS9PaUJ1ZFcxaVpYSTdYRzRnSUc5bVpuTmxkRDg2SUc1MWJXSmxjanRjYm4xY2JseHVaWGh3YjNKMElHTnNZWE56SUVac1lYUlVjbVZsSUh0Y2JpQWdZMjl1YzNSeWRXTjBiM0lvWEc0Z0lDQWdjSFZpYkdsaklHaDVjR1Z5Y0d4aGJtVnpPaUJ1ZFcxaVpYSmJYU3hjYmlBZ0lDQndkV0pzYVdNZ2IyWm1jMlYwY3pvZ2JuVnRZbVZ5VzEwc1hHNGdJQ0FnY0hWaWJHbGpJR05vYVd4a2NtVnVPaUJ1ZFcxaVpYSmJYVnRkTEZ4dUlDQWdJSEIxWW14cFl5QnBibVJwWTJWek9pQnVkVzFpWlhKYlhWdGRYRzRnSUNrZ2UzMWNibjFjYmx4dUx5b3FYRzRnS2lCQ2RXbHNaQ0JoSUhKaGJtUnZiU0J3Y205cVpXTjBhVzl1SUdadmNtVnpkQ0IzYVhSb0lHQmdibFJ5WldWellHQXVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdFlXdGxSbTl5WlhOMEtGeHVJQ0JrWVhSaE9pQldaV04wYjNJc1hHNGdJRzVPWldsbmFHSnZjbk02SUc1MWJXSmxjaXhjYmlBZ2JsUnlaV1Z6T2lCdWRXMWlaWElzWEc0Z0lISmhibVJ2YlRvZ1VtRnVaRzl0Um01Y2Jpa2dlMXh1SUNCamIyNXpkQ0JzWldGbVUybDZaU0E5SUUxaGRHZ3ViV0Y0S0RFd0xDQnVUbVZwWjJoaWIzSnpLVHRjYmx4dUlDQmpiMjV6ZENCMGNtVmxjeUE5SUhWMGFXeHpYRzRnSUNBZ0xuSmhibWRsS0c1VWNtVmxjeWxjYmlBZ0lDQXViV0Z3S0NoZkxDQnBLU0E5UGlCdFlXdGxWSEpsWlNoa1lYUmhMQ0JzWldGbVUybDZaU3dnYVN3Z2NtRnVaRzl0S1NrN1hHNGdJR052Ym5OMElHWnZjbVZ6ZENBOUlIUnlaV1Z6TG0xaGNDZ29kSEpsWlNrZ1BUNGdabXhoZEhSbGJsUnlaV1VvZEhKbFpTd2diR1ZoWmxOcGVtVXBLVHRjYmx4dUlDQnlaWFIxY200Z1ptOXlaWE4wTzF4dWZWeHVYRzR2S2lwY2JpQXFJRU52Ym5OMGNuVmpkQ0JoSUhKaGJtUnZiU0J3Y205cVpXTjBhVzl1SUhSeVpXVWdZbUZ6WldRZ2IyNGdZR0JrWVhSaFlHQWdkMmwwYUNCc1pXRjJaWE5jYmlBcUlHOW1JSE5wZW1VZ1lYUWdiVzl6ZENCZ1lHeGxZV1pUYVhwbFlHQmNiaUFxTDF4dVpuVnVZM1JwYjI0Z2JXRnJaVlJ5WldVb1hHNGdJR1JoZEdFNklGWmxZM1J2Y2l4Y2JpQWdiR1ZoWmxOcGVtVWdQU0F6TUN4Y2JpQWdiam9nYm5WdFltVnlMRnh1SUNCeVlXNWtiMjA2SUZKaGJtUnZiVVp1WEc0cE9pQlNZVzVrYjIxUWNtOXFaV04wYVc5dVZISmxaVTV2WkdVZ2UxeHVJQ0JqYjI1emRDQnBibVJwWTJWeklEMGdkWFJwYkhNdWNtRnVaMlVvWkdGMFlTNXNaVzVuZEdncE8xeHVJQ0JqYjI1emRDQjBjbVZsSUQwZ2JXRnJaVVYxWTJ4cFpHVmhibFJ5WldVb1pHRjBZU3dnYVc1a2FXTmxjeXdnYkdWaFpsTnBlbVVzSUc0c0lISmhibVJ2YlNrN1hHNGdJSEpsZEhWeWJpQjBjbVZsTzF4dWZWeHVYRzVtZFc1amRHbHZiaUJ0WVd0bFJYVmpiR2xrWldGdVZISmxaU2hjYmlBZ1pHRjBZVG9nVm1WamRHOXlMRnh1SUNCcGJtUnBZMlZ6T2lCdWRXMWlaWEpiWFN4Y2JpQWdiR1ZoWmxOcGVtVWdQU0F6TUN4Y2JpQWdjVG9nYm5WdFltVnlMRnh1SUNCeVlXNWtiMjA2SUZKaGJtUnZiVVp1WEc0cE9pQlNZVzVrYjIxUWNtOXFaV04wYVc5dVZISmxaVTV2WkdVZ2UxeHVJQ0JwWmlBb2FXNWthV05sY3k1c1pXNW5kR2dnUGlCc1pXRm1VMmw2WlNrZ2UxeHVJQ0FnSUdOdmJuTjBJSE53YkdsMFVtVnpkV3gwY3lBOUlHVjFZMnhwWkdWaGJsSmhibVJ2YlZCeWIycGxZM1JwYjI1VGNHeHBkQ2hrWVhSaExDQnBibVJwWTJWekxDQnlZVzVrYjIwcE8xeHVJQ0FnSUdOdmJuTjBJSHRwYm1ScFkyVnpUR1ZtZEN3Z2FXNWthV05sYzFKcFoyaDBMQ0JvZVhCbGNuQnNZVzVsTENCdlptWnpaWFI5SUQwZ2MzQnNhWFJTWlhOMWJIUnpPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JHVm1kRU5vYVd4a0lEMGdiV0ZyWlVWMVkyeHBaR1ZoYmxSeVpXVW9YRzRnSUNBZ0lDQmtZWFJoTEZ4dUlDQWdJQ0FnYVc1a2FXTmxjMHhsWm5Rc1hHNGdJQ0FnSUNCc1pXRm1VMmw2WlN4Y2JpQWdJQ0FnSUhFZ0t5QXhMRnh1SUNBZ0lDQWdjbUZ1Wkc5dFhHNGdJQ0FnS1R0Y2JpQWdJQ0JqYjI1emRDQnlhV2RvZEVOb2FXeGtJRDBnYldGclpVVjFZMnhwWkdWaGJsUnlaV1VvWEc0Z0lDQWdJQ0JrWVhSaExGeHVJQ0FnSUNBZ2FXNWthV05sYzFKcFoyaDBMRnh1SUNBZ0lDQWdiR1ZoWmxOcGVtVXNYRzRnSUNBZ0lDQnhJQ3NnTVN4Y2JpQWdJQ0FnSUhKaGJtUnZiVnh1SUNBZ0lDazdYRzVjYmlBZ0lDQmpiMjV6ZENCdWIyUmxJRDBnZTJ4bFpuUkRhR2xzWkN3Z2NtbG5hSFJEYUdsc1pDd2dhWE5NWldGbU9pQm1ZV3h6WlN3Z2FIbHdaWEp3YkdGdVpTd2diMlptYzJWMGZUdGNiaUFnSUNCeVpYUjFjbTRnYm05a1pUdGNiaUFnZlNCbGJITmxJSHRjYmlBZ0lDQmpiMjV6ZENCdWIyUmxJRDBnZTJsdVpHbGpaWE1zSUdselRHVmhaam9nZEhKMVpYMDdYRzRnSUNBZ2NtVjBkWEp1SUc1dlpHVTdYRzRnSUgxY2JuMWNibHh1THlvcVhHNGdLaUJIYVhabGJpQmhJSE5sZENCdlppQmdZR2x1WkdsalpYTmdZQ0JtYjNJZ1pHRjBZU0J3YjJsdWRITWdabkp2YlNCZ1lHUmhkR0ZnWUN3Z1kzSmxZWFJsWEc0Z0tpQmhJSEpoYm1SdmJTQm9lWEJsY25Cc1lXNWxJSFJ2SUhOd2JHbDBJSFJvWlNCa1lYUmhMQ0J5WlhSMWNtNXBibWNnZEhkdklHRnljbUY1Y3lCcGJtUnBZMlZ6WEc0Z0tpQjBhR0YwSUdaaGJHd2diMjRnWldsMGFHVnlJSE5wWkdVZ2IyWWdkR2hsSUdoNWNHVnljR3hoYm1VdUlGUm9hWE1nYVhNZ2RHaGxJR0poYzJseklHWnZjaUJoWEc0Z0tpQnlZVzVrYjIwZ2NISnZhbVZqZEdsdmJpQjBjbVZsTENCM2FHbGphQ0J6YVcxd2JIa2dkWE5sY3lCMGFHbHpJSE53YkdsMGRHbHVaeUJ5WldOMWNuTnBkbVZzZVM1Y2JpQXFJRlJvYVhNZ2NHRnlkR2xqZFd4aGNpQnpjR3hwZENCMWMyVnpJR1YxWTJ4cFpHVmhiaUJrYVhOMFlXNWpaU0IwYnlCa1pYUmxjbTFwYm1VZ2RHaGxJR2g1Y0dWeWNHeGhibVZjYmlBcUlHRnVaQ0IzYUdsamFDQnphV1JsSUdWaFkyZ2daR0YwWVNCellXMXdiR1VnWm1Gc2JITWdiMjR1WEc0Z0tpOWNibVoxYm1OMGFXOXVJR1YxWTJ4cFpHVmhibEpoYm1SdmJWQnliMnBsWTNScGIyNVRjR3hwZENoY2JpQWdaR0YwWVRvZ1ZtVmpkRzl5TEZ4dUlDQnBibVJwWTJWek9pQnVkVzFpWlhKYlhTeGNiaUFnY21GdVpHOXRPaUJTWVc1a2IyMUdibHh1S1NCN1hHNGdJQzh2WTI5dWMzUWdaR2x0SUQwZ01UdGNibHh1SUNBdkx5QlRaV3hsWTNRZ2RIZHZJSEpoYm1SdmJTQndiMmx1ZEhNc0lITmxkQ0IwYUdVZ2FIbHdaWEp3YkdGdVpTQmlaWFIzWldWdUlIUm9aVzFjYmlBZ1kyOXVjM1FnYkdWbWRFbHVaR1Y0SUQwZ2RYUnBiSE11ZEdGMVVtRnVaRWx1ZENocGJtUnBZMlZ6TG14bGJtZDBhQ3dnY21GdVpHOXRLVHRjYmlBZ2JHVjBJSEpwWjJoMFNXNWtaWGdnUFNCMWRHbHNjeTUwWVhWU1lXNWtTVzUwS0dsdVpHbGpaWE11YkdWdVozUm9MQ0J5WVc1a2IyMHBPMXh1SUNCeWFXZG9kRWx1WkdWNElDczlJR3hsWm5SSmJtUmxlQ0E5UFQwZ2NtbG5hSFJKYm1SbGVDQS9JREVnT2lBd08xeHVJQ0J5YVdkb2RFbHVaR1Y0SUQwZ2NtbG5hSFJKYm1SbGVDQWxJR2x1WkdsalpYTXViR1Z1WjNSb08xeHVJQ0JqYjI1emRDQnNaV1owSUQwZ2FXNWthV05sYzF0c1pXWjBTVzVrWlhoZE8xeHVJQ0JqYjI1emRDQnlhV2RvZENBOUlHbHVaR2xqWlhOYmNtbG5hSFJKYm1SbGVGMDdYRzVjYmlBZ0x5OGdRMjl0Y0hWMFpTQjBhR1VnYm05eWJXRnNJSFpsWTNSdmNpQjBieUIwYUdVZ2FIbHdaWEp3YkdGdVpTQW9kR2hsSUhabFkzUnZjaUJpWlhSM1pXVnVJSFJvWlNCMGQyOWNiaUFnTHk4Z2NHOXBiblJ6S1NCaGJtUWdkR2hsSUc5bVpuTmxkQ0JtY205dElIUm9aU0J2Y21sbmFXNWNiaUFnYkdWMElHaDVjR1Z5Y0d4aGJtVlBabVp6WlhRZ1BTQXdPMXh1SUNCc1pYUWdhSGx3WlhKd2JHRnVaVlpsWTNSdmNpQTlJREE3WEc1Y2JseHVJQ0JvZVhCbGNuQnNZVzVsVm1WamRHOXlJRDBnWkdGMFlWdHNaV1owWFNBdElHUmhkR0ZiY21sbmFIUmRPMXh1SUNCb2VYQmxjbkJzWVc1bFQyWm1jMlYwSUMwOVhHNGdJQ0FnS0doNWNHVnljR3hoYm1WV1pXTjBiM0lnS2lBb1pHRjBZVnRzWldaMFhTQXJJR1JoZEdGYmNtbG5hSFJkS1NrZ0x5QXlMakE3WEc1Y2JseHVJQ0F2THlCR2IzSWdaV0ZqYUNCd2IybHVkQ0JqYjIxd2RYUmxJSFJvWlNCdFlYSm5hVzRnS0hCeWIycGxZM1FnYVc1MGJ5QnViM0p0WVd3Z2RtVmpkRzl5S1Z4dUlDQXZMeUJKWmlCM1pTQmhjbVVnYjI0Z2JHOTNaWElnYzJsa1pTQnZaaUIwYUdVZ2FIbHdaWEp3YkdGdVpTQndkWFFnYVc0Z2IyNWxJSEJwYkdVc0lHOTBhR1Z5ZDJselpWeHVJQ0F2THlCd2RYUWdhWFFnYVc0Z2RHaGxJRzkwYUdWeUlIQnBiR1VnS0dsbUlIZGxJR2hwZENCb2VYQmxjbkJzWVc1bElHOXVJSFJvWlNCdWIzTmxMQ0JtYkdsd0lHRWdZMjlwYmlsY2JpQWdiR1YwSUc1TVpXWjBJRDBnTUR0Y2JpQWdiR1YwSUc1U2FXZG9kQ0E5SURBN1hHNGdJR052Ym5OMElITnBaR1VnUFNCMWRHbHNjeTU2WlhKdmN5aHBibVJwWTJWekxteGxibWQwYUNrN1hHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnYVc1a2FXTmxjeTVzWlc1bmRHZzdJR2tyS3lrZ2UxeHVJQ0FnSUd4bGRDQnRZWEpuYVc0Z1BTQm9lWEJsY25Cc1lXNWxUMlptYzJWME8xeHVYRzRnSUNBZ2JXRnlaMmx1SUNzOUlHaDVjR1Z5Y0d4aGJtVldaV04wYjNJZ0tpQmtZWFJoVzJsdVpHbGpaWE5iYVYxZE8xeHVYRzRnSUNBZ2FXWWdLRzFoY21kcGJpQTlQVDBnTUNrZ2UxeHVJQ0FnSUNBZ2MybGtaVnRwWFNBOUlIVjBhV3h6TG5SaGRWSmhibVJKYm5Rb01pd2djbUZ1Wkc5dEtUdGNiaUFnSUNBZ0lHbG1JQ2h6YVdSbFcybGRJRDA5UFNBd0tWeHVJQ0FnSUNBZ0lDQnVUR1ZtZENBclBTQXhPMXh1SUNBZ0lDQWdaV3h6WlZ4dUlDQWdJQ0FnSUNCdVVtbG5hSFFnS3owZ01UdGNiaUFnSUNCOUlHVnNjMlVnYVdZZ0tHMWhjbWRwYmlBK0lEQXBJSHRjYmlBZ0lDQWdJSE5wWkdWYmFWMGdQU0F3TzF4dUlDQWdJQ0FnYmt4bFpuUWdLejBnTVR0Y2JpQWdJQ0I5SUdWc2MyVWdlMXh1SUNBZ0lDQWdjMmxrWlZ0cFhTQTlJREU3WEc0Z0lDQWdJQ0J1VW1sbmFIUWdLejBnTVR0Y2JpQWdJQ0I5WEc0Z0lIMWNibHh1SUNBdkx5Qk9iM2NnZEdoaGRDQjNaU0JvWVhabElIUm9aU0JqYjNWdWRITXNJR0ZzYkc5allYUmxJR0Z5Y21GNWMxeHVJQ0JqYjI1emRDQnBibVJwWTJWelRHVm1kQ0E5SUhWMGFXeHpMbnBsY205ektHNU1aV1owS1R0Y2JpQWdZMjl1YzNRZ2FXNWthV05sYzFKcFoyaDBJRDBnZFhScGJITXVlbVZ5YjNNb2JsSnBaMmgwS1R0Y2JseHVJQ0F2THlCUWIzQjFiR0YwWlNCMGFHVWdZWEp5WVhseklIZHBkR2dnYVc1a2FXTmxjeUJoWTJOdmNtUnBibWNnZEc4Z2QyaHBZMmdnYzJsa1pTQjBhR1Y1SUdabGJHd2diMjVjYmlBZ2JreGxablFnUFNBd08xeHVJQ0J1VW1sbmFIUWdQU0F3TzF4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSE5wWkdVdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQnBaaUFvYzJsa1pWdHBYU0E5UFQwZ01Da2dlMXh1SUNBZ0lDQWdhVzVrYVdObGMweGxablJiYmt4bFpuUmRJRDBnYVc1a2FXTmxjMXRwWFR0Y2JpQWdJQ0FnSUc1TVpXWjBJQ3M5SURFN1hHNGdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJR2x1WkdsalpYTlNhV2RvZEZ0dVVtbG5hSFJkSUQwZ2FXNWthV05sYzF0cFhUdGNiaUFnSUNBZ0lHNVNhV2RvZENBclBTQXhPMXh1SUNBZ0lIMWNiaUFnZlZ4dVhHNGdJSEpsZEhWeWJpQjdYRzRnSUNBZ2FXNWthV05sYzB4bFpuUXNYRzRnSUNBZ2FXNWthV05sYzFKcFoyaDBMRnh1SUNBZ0lHaDVjR1Z5Y0d4aGJtVTZJR2g1Y0dWeWNHeGhibVZXWldOMGIzSXNYRzRnSUNBZ2IyWm1jMlYwT2lCb2VYQmxjbkJzWVc1bFQyWm1jMlYwTEZ4dUlDQjlPMXh1ZlZ4dVhHNW1kVzVqZEdsdmJpQm1iR0YwZEdWdVZISmxaU2gwY21WbE9pQlNZVzVrYjIxUWNtOXFaV04wYVc5dVZISmxaVTV2WkdVc0lHeGxZV1pUYVhwbE9pQnVkVzFpWlhJcElIdGNiaUFnWTI5dWMzUWdiazV2WkdWeklEMGdiblZ0VG05a1pYTW9kSEpsWlNrN1hHNGdJR052Ym5OMElHNU1aV0YyWlhNZ1BTQnVkVzFNWldGMlpYTW9kSEpsWlNrN1hHNWNiaUFnTHk4Z1ZFOUVUem9nVm1WeWFXWjVJSFJvWVhRZ2MzQmhjbk5sSUdOdlpHVWdhWE1nYm05MElISmxiR1YyWVc1MExpNHVYRzRnSUdOdmJuTjBJR2g1Y0dWeWNHeGhibVZ6SUQwZ2RYUnBiSE5jYmlBZ0lDQXVjbUZ1WjJVb2JrNXZaR1Z6S1Z4dUlDQWdJQzV0WVhBb0tDa2dQVDRnZEhKbFpTNW9lWEJsY25Cc1lXNWxJRDhnTVNBNklEQXBPMXh1WEc0Z0lHTnZibk4wSUc5bVpuTmxkSE1nUFNCMWRHbHNjeTU2WlhKdmN5aHVUbTlrWlhNcE8xeHVJQ0JqYjI1emRDQmphR2xzWkhKbGJpQTlJSFYwYVd4ekxuSmhibWRsS0c1T2IyUmxjeWt1YldGd0tDZ3BJRDArSUZzdE1Td2dMVEZkS1R0Y2JpQWdZMjl1YzNRZ2FXNWthV05sY3lBOUlIVjBhV3h6WEc0Z0lDQWdMbkpoYm1kbEtHNU1aV0YyWlhNcFhHNGdJQ0FnTG0xaGNDZ29LU0E5UGlCMWRHbHNjeTV5WVc1blpTaHNaV0ZtVTJsNlpTa3ViV0Z3S0NncElEMCtJQzB4S1NrN1hHNGdJSEpsWTNWeWMybDJaVVpzWVhSMFpXNG9kSEpsWlN3Z2FIbHdaWEp3YkdGdVpYTXNJRzltWm5ObGRITXNJR05vYVd4a2NtVnVMQ0JwYm1ScFkyVnpMQ0F3TENBd0tUdGNiaUFnY21WMGRYSnVJRzVsZHlCR2JHRjBWSEpsWlNob2VYQmxjbkJzWVc1bGN5d2diMlptYzJWMGN5d2dZMmhwYkdSeVpXNHNJR2x1WkdsalpYTXBPMXh1ZlZ4dVhHNW1kVzVqZEdsdmJpQnlaV04xY25OcGRtVkdiR0YwZEdWdUtGeHVJQ0IwY21WbE9pQlNZVzVrYjIxUWNtOXFaV04wYVc5dVZISmxaVTV2WkdVc1hHNGdJR2g1Y0dWeWNHeGhibVZ6T2lCdWRXMWlaWEpiWFN4Y2JpQWdiMlptYzJWMGN6b2diblZ0WW1WeVcxMHNYRzRnSUdOb2FXeGtjbVZ1T2lCdWRXMWlaWEpiWFZ0ZExGeHVJQ0JwYm1ScFkyVnpPaUJ1ZFcxaVpYSmJYVnRkTEZ4dUlDQnViMlJsVG5WdE9pQnVkVzFpWlhJc1hHNGdJR3hsWVdaT2RXMDZJRzUxYldKbGNseHVLVG9nZXlCdWIyUmxUblZ0T2lCdWRXMWlaWEk3SUd4bFlXWk9kVzA2SUc1MWJXSmxjaUI5SUh0Y2JpQWdhV1lnS0hSeVpXVXVhWE5NWldGbUtTQjdYRzRnSUNBZ1kyaHBiR1J5Wlc1YmJtOWtaVTUxYlYxYk1GMGdQU0F0YkdWaFprNTFiVHRjYmx4dUlDQWdJQzh2SUZSUFJFODZJRlJ5YVhCc1pTQmphR1ZqYXlCMGFHbHpJRzl3WlhKaGRHbHZiaUJqYjNKeVpYTndiMjVrY3lCMGIxeHVJQ0FnSUM4dklHbHVaR2xqWlhOYmJHVmhaazUxYlNBNklIUnlaV1V1YVc1a2FXTmxjeTV6YUdGd1pWc3dYVjBnUFNCMGNtVmxMbWx1WkdsalpYTmNiaUFnSUNCcGJtUnBZMlZ6VzJ4bFlXWk9kVzFkTG5Od2JHbGpaU2d3TENCMGNtVmxMbWx1WkdsalpYTWhMbXhsYm1kMGFDd2dMaTR1ZEhKbFpTNXBibVJwWTJWeklTazdYRzRnSUNBZ2JHVmhaazUxYlNBclBTQXhPMXh1SUNBZ0lISmxkSFZ5YmlCN2JtOWtaVTUxYlN3Z2JHVmhaazUxYlgwN1hHNGdJSDBnWld4elpTQjdYRzRnSUNBZ2FIbHdaWEp3YkdGdVpYTmJibTlrWlU1MWJWMGdQU0IwY21WbExtaDVjR1Z5Y0d4aGJtVWhPMXh1SUNBZ0lHOW1abk5sZEhOYmJtOWtaVTUxYlYwZ1BTQjBjbVZsTG05bVpuTmxkQ0U3WEc0Z0lDQWdZMmhwYkdSeVpXNWJibTlrWlU1MWJWMWJNRjBnUFNCdWIyUmxUblZ0SUNzZ01UdGNiaUFnSUNCamIyNXpkQ0J2YkdST2IyUmxUblZ0SUQwZ2JtOWtaVTUxYlR0Y2JseHVJQ0FnSUd4bGRDQnlaWE1nUFNCeVpXTjFjbk5wZG1WR2JHRjBkR1Z1S0Z4dUlDQWdJQ0FnZEhKbFpTNXNaV1owUTJocGJHUWhMRnh1SUNBZ0lDQWdhSGx3WlhKd2JHRnVaWE1zWEc0Z0lDQWdJQ0J2Wm1aelpYUnpMRnh1SUNBZ0lDQWdZMmhwYkdSeVpXNHNYRzRnSUNBZ0lDQnBibVJwWTJWekxGeHVJQ0FnSUNBZ2JtOWtaVTUxYlNBcklERXNYRzRnSUNBZ0lDQnNaV0ZtVG5WdFhHNGdJQ0FnS1R0Y2JpQWdJQ0J1YjJSbFRuVnRJRDBnY21WekxtNXZaR1ZPZFcwN1hHNGdJQ0FnYkdWaFprNTFiU0E5SUhKbGN5NXNaV0ZtVG5WdE8xeHVYRzRnSUNBZ1kyaHBiR1J5Wlc1YmIyeGtUbTlrWlU1MWJWMWJNVjBnUFNCdWIyUmxUblZ0SUNzZ01UdGNibHh1SUNBZ0lISmxjeUE5SUhKbFkzVnljMmwyWlVac1lYUjBaVzRvWEc0Z0lDQWdJQ0IwY21WbExuSnBaMmgwUTJocGJHUWhMRnh1SUNBZ0lDQWdhSGx3WlhKd2JHRnVaWE1zWEc0Z0lDQWdJQ0J2Wm1aelpYUnpMRnh1SUNBZ0lDQWdZMmhwYkdSeVpXNHNYRzRnSUNBZ0lDQnBibVJwWTJWekxGeHVJQ0FnSUNBZ2JtOWtaVTUxYlNBcklERXNYRzRnSUNBZ0lDQnNaV0ZtVG5WdFhHNGdJQ0FnS1R0Y2JpQWdJQ0J5WlhSMWNtNGdlMjV2WkdWT2RXMDZJSEpsY3k1dWIyUmxUblZ0TENCc1pXRm1UblZ0T2lCeVpYTXViR1ZoWms1MWJYMDdYRzRnSUgxY2JuMWNibHh1Wm5WdVkzUnBiMjRnYm5WdFRtOWtaWE1vZEhKbFpUb2dVbUZ1Wkc5dFVISnZhbVZqZEdsdmJsUnlaV1ZPYjJSbEtUb2diblZ0WW1WeUlIdGNiaUFnYVdZZ0tIUnlaV1V1YVhOTVpXRm1LVnh1SUNBZ0lISmxkSFZ5YmlBeE8xeHVJQ0JsYkhObFhHNGdJQ0FnY21WMGRYSnVJREVnS3lCdWRXMU9iMlJsY3loMGNtVmxMbXhsWm5SRGFHbHNaQ0VwSUNzZ2JuVnRUbTlrWlhNb2RISmxaUzV5YVdkb2RFTm9hV3hrSVNrN1hHNTlYRzVjYm1aMWJtTjBhVzl1SUc1MWJVeGxZWFpsY3loMGNtVmxPaUJTWVc1a2IyMVFjbTlxWldOMGFXOXVWSEpsWlU1dlpHVXBPaUJ1ZFcxaVpYSWdlMXh1SUNCcFppQW9kSEpsWlM1cGMweGxZV1lwWEc0Z0lDQWdjbVYwZFhKdUlERTdYRzRnSUdWc2MyVmNiaUFnSUNCeVpYUjFjbTRnYm5WdFRHVmhkbVZ6S0hSeVpXVXViR1ZtZEVOb2FXeGtJU2tnS3lCdWRXMU1aV0YyWlhNb2RISmxaUzV5YVdkb2RFTm9hV3hrSVNrN1hHNTlYRzVjYmk4cUtseHVJQ29nUjJWdVpYSmhkR1VnWVc0Z1lYSnlZWGtnYjJZZ2MyVjBjeUJ2WmlCallXNWthV1JoZEdVZ2JtVmhjbVZ6ZENCdVpXbG5hR0p2Y25NZ1lubGNiaUFxSUdOdmJuTjBjblZqZEdsdVp5QmhJSEpoYm1SdmJTQndjbTlxWldOMGFXOXVJR1p2Y21WemRDQmhibVFnZEdGcmFXNW5JSFJvWlNCc1pXRjJaWE1nYjJZZ1lXeHNJSFJvWlZ4dUlDb2dkSEpsWlhNdUlFRnVlU0JuYVhabGJpQjBjbVZsSUdoaGN5QnNaV0YyWlhNZ2RHaGhkQ0JoY21VZ1lTQnpaWFFnYjJZZ2NHOTBaVzUwYVdGc0lHNWxZWEpsYzNSY2JpQXFJRzVsYVdkb1ltOXljeTRnUjJsMlpXNGdaVzV2ZFdkb0lIUnlaV1Z6SUhSb1pTQnpaWFFnYjJZZ1lXeHNJSE4xWTJnZ2JHVmhkbVZ6SUdkcGRtVnpJR0VnWjI5dlpGeHVJQ29nYkdsclpXeHBhRzl2WkNCdlppQm5aWFIwYVc1bklHRWdaMjl2WkNCelpYUWdiMllnYm1WaGNtVnpkQ0J1WldsbmFHSnZjbk1nYVc0Z1kyOXRjRzl6YVhSbExpQlRhVzVqWlZ4dUlDb2djM1ZqYUNCaElISmhibVJ2YlNCd2NtOXFaV04wYVc5dUlHWnZjbVZ6ZENCcGN5QnBibVY0Y0dWdWMybDJaU0IwYnlCamIyMXdkWFJsTENCMGFHbHpJR05oYmlCaVpTQmhYRzRnS2lCMWMyVm1kV3dnYldWaGJuTWdiMllnYzJWbFpHbHVaeUJ2ZEdobGNpQnVaV0Z5WlhOMElHNWxhV2RvWW05eUlHRnNaMjl5YVhSb2JYTXVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdFlXdGxUR1ZoWmtGeWNtRjVLSEp3Um05eVpYTjBPaUJHYkdGMFZISmxaVnRkS1RvZ2JuVnRZbVZ5VzExYlhTQjdYRzRnSUdsbUlDaHljRVp2Y21WemRDNXNaVzVuZEdnZ1BpQXdLU0I3WEc0Z0lDQWdZMjl1YzNRZ2IzVjBjSFYwT2lCdWRXMWlaWEpiWFZ0ZElEMGdXMTA3WEc0Z0lDQWdabTl5SUNoamIyNXpkQ0IwY21WbElHOW1JSEp3Um05eVpYTjBLVnh1SUNBZ0lDQWdiM1YwY0hWMExuQjFjMmdvTGk0dWRISmxaUzVwYm1ScFkyVnpJU2s3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdiM1YwY0hWME8xeHVJQ0I5SUdWc2MyVWdlMXh1SUNBZ0lISmxkSFZ5YmlCYld5MHhYVjA3WEc0Z0lIMWNibjFjYmx4dUx5b3FYRzRnS2lCVFpXeGxZM1J6SUhSb1pTQnphV1JsSUc5bUlIUm9aU0IwY21WbElIUnZJSE5sWVhKamFDQmtkWEpwYm1jZ1pteGhkQ0IwY21WbElITmxZWEpqYUM1Y2JpQXFMMXh1Wm5WdVkzUnBiMjRnYzJWc1pXTjBVMmxrWlNoY2JpQWdhSGx3WlhKd2JHRnVaVG9nYm5WdFltVnlMRnh1SUNCdlptWnpaWFE2SUc1MWJXSmxjaXhjYmlBZ2NHOXBiblE2SUc1MWJXSmxjaXhjYmlBZ2NtRnVaRzl0T2lCU1lXNWtiMjFHYmx4dUtTQjdYRzRnSUd4bGRDQnRZWEpuYVc0Z1BTQnZabVp6WlhRN1hHNWNiaUFnYldGeVoybHVJQ3M5SUdoNWNHVnljR3hoYm1VZ0tpQndiMmx1ZER0Y2JseHVYRzRnSUdsbUlDaHRZWEpuYVc0Z1BUMDlJREFwSUh0Y2JpQWdJQ0JqYjI1emRDQnphV1JsSUQwZ2RYUnBiSE11ZEdGMVVtRnVaRWx1ZENneUxDQnlZVzVrYjIwcE8xeHVJQ0FnSUhKbGRIVnliaUJ6YVdSbE8xeHVJQ0I5SUdWc2MyVWdhV1lnS0cxaGNtZHBiaUErSURBcElIdGNiaUFnSUNCeVpYUjFjbTRnTUR0Y2JpQWdmU0JsYkhObElIdGNiaUFnSUNCeVpYUjFjbTRnTVR0Y2JpQWdmVnh1ZlZ4dVhHNHZLaXBjYmlBcUlGTmxZWEpqYUdWeklHRWdabXhoZEhSbGJtVmtJSEp3TFhSeVpXVWdabTl5SUdFZ2NHOXBiblF1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnpaV0Z5WTJoR2JHRjBWSEpsWlNoY2JpQWdjRzlwYm5RNklHNTFiV0psY2l4Y2JpQWdkSEpsWlRvZ1JteGhkRlJ5WldVc1hHNGdJSEpoYm1SdmJUb2dVbUZ1Wkc5dFJtNWNiaWtnZTF4dUlDQnNaWFFnYm05a1pTQTlJREE3WEc0Z0lIZG9hV3hsSUNoMGNtVmxMbU5vYVd4a2NtVnVXMjV2WkdWZFd6QmRJRDRnTUNrZ2UxeHVJQ0FnSUdOdmJuTjBJSE5wWkdVZ1BTQnpaV3hsWTNSVGFXUmxLRnh1SUNBZ0lDQWdkSEpsWlM1b2VYQmxjbkJzWVc1bGMxdHViMlJsWFN4Y2JpQWdJQ0FnSUhSeVpXVXViMlptYzJWMGMxdHViMlJsWFN4Y2JpQWdJQ0FnSUhCdmFXNTBMRnh1SUNBZ0lDQWdjbUZ1Wkc5dFhHNGdJQ0FnS1R0Y2JpQWdJQ0JwWmlBb2MybGtaU0E5UFQwZ01DbGNiaUFnSUNBZ0lHNXZaR1VnUFNCMGNtVmxMbU5vYVd4a2NtVnVXMjV2WkdWZFd6QmRPMXh1SUNBZ0lHVnNjMlZjYmlBZ0lDQWdJRzV2WkdVZ1BTQjBjbVZsTG1Ob2FXeGtjbVZ1VzI1dlpHVmRXekZkTzF4dUlDQjlYRzVjYmlBZ1kyOXVjM1FnYVc1a1pYZ2dQU0F0TVNBcUlIUnlaV1V1WTJocGJHUnlaVzViYm05a1pWMWJNRjA3WEc0Z0lISmxkSFZ5YmlCMGNtVmxMbWx1WkdsalpYTmJhVzVrWlhoZE8xeHVmVnh1SWwxOSIsIi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbi8qKlxuICogQGxpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgMjAxOSBHb29nbGUgTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICovXG4vKipcbiAqIFRoaXMgaXMgYSBKYXZhU2NyaXB0IHJlaW1wbGVtZW50YXRpb24gb2YgVU1BUCAob3JpZ2luYWwgbGljZW5zZSBiZWxvdyksIGZyb21cbiAqIHRoZSBweXRob24gaW1wbGVtZW50YXRpb24gZm91bmQgYXQgaHR0cHM6Ly9naXRodWIuY29tL2xtY2lubmVzL3VtYXAuXG4gKlxuICogQGF1dGhvciBhbmR5Y29lbmVuQGdvb2dsZS5jb20gKEFuZHkgQ29lbmVuKVxuICovXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBCU0QgMy1DbGF1c2UgTGljZW5zZVxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxNywgTGVsYW5kIE1jSW5uZXNcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0XG4gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDpcbiAqXG4gKiAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpc1xuICogICBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci5cbiAqXG4gKiAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSxcbiAqICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvblxuICogICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi5cbiAqXG4gKiAqIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHNcbiAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb21cbiAqICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi5cbiAqXG4gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTIFwiQVMgSVNcIlxuICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRVxuICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFXG4gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFXG4gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTFxuICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1JcbiAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSXG4gKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLFxuICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0VcbiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuXG4gKi9cbmltcG9ydCAqIGFzIGhlYXAgZnJvbSAnLi9oZWFwJztcbmltcG9ydCAqIGFzIG1hdHJpeCBmcm9tICcuL21hdHJpeCc7XG5pbXBvcnQgKiBhcyBubkRlc2NlbnQgZnJvbSAnLi9ubl9kZXNjZW50JztcbmltcG9ydCAqIGFzIHRyZWUgZnJvbSAnLi90cmVlJztcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IExNIGZyb20gJ21sLWxldmVuYmVyZy1tYXJxdWFyZHQnO1xuY29uc3QgU01PT1RIX0tfVE9MRVJBTkNFID0gMWUtNTtcbmNvbnN0IE1JTl9LX0RJU1RfU0NBTEUgPSAxZS0zO1xuLyoqXG4gKiBVTUFQIHByb2plY3Rpb24gc3lzdGVtLCBiYXNlZCBvbiB0aGUgcHl0aG9uIGltcGxlbWVudGF0aW9uIGZyb20gTWNJbm5lcywgTCxcbiAqIEhlYWx5LCBKLCBVTUFQOiBVbmlmb3JtIE1hbmlmb2xkIEFwcHJveGltYXRpb24gYW5kIFByb2plY3Rpb24gZm9yIERpbWVuc2lvblxuICogUmVkdWN0aW9uIChodHRwczovL2dpdGh1Yi5jb20vbG1jaW5uZXMvdW1hcCkuXG4gKlxuICogVGhpcyBpbXBsZW1lbnRhdGlvbiBkaWZmZXJzIGluIGEgZmV3IHJlZ2FyZHM6XG4gKiBhKSBUaGUgaW5pdGlhbGl6YXRpb24gb2YgdGhlIGVtYmVkZGluZyBmb3Igb3B0aW1pemF0aW9uIGlzIG5vdCBjb21wdXRlZCB1c2luZ1xuICogICAgYSBzcGVjdHJhbCBtZXRob2QsIHJhdGhlciBpdCBpcyBpbml0aWFsaXplZCByYW5kb21seS4gVGhpcyBhdm9pZHMgc29tZVxuICogICAgY29tcHV0YXRpb25hbGx5IGludGVuc2l2ZSBtYXRyaXggZWlnZW4gY29tcHV0YXRpb25zIHRoYXQgYXJlbid0IGVhc2lseVxuICogICAgcG9ydGVkIHRvIEphdmFTY3JpcHQuXG4gKiBiKSBBIGxvdCBvZiBcImV4dHJhXCIgZnVuY3Rpb25hbGl0eSBoYXMgYmVlbiBvbWl0dGVkIGZyb20gdGhpcyBpbXBsZW1lbnRhdGlvbixcbiAqICAgIG1vc3Qgbm90YWJseSBhIGdyZWF0IGRlYWwgb2YgYWx0ZXJuYXRlIGRpc3RhbmNlIGZ1bmN0aW9ucy5cbiAqXG4gKiBUaGlzIGltcGxlbWVudGF0aW9uIHByb3ZpZGVzIHRocmVlIG1ldGhvZHMgb2YgcmVkdWNpbmcgZGltZW5zaW9uYWxpdHk6XG4gKiAxKSBmaXQ6IGZpdCB0aGUgZGF0YSBzeW5jaHJvbm91c2x5XG4gKiAyKSBmaXRBc3luYzogZml0IHRoZSBkYXRhIGFzeW5jaHJvbm91c2x5LCB3aXRoIGEgY2FsbGJhY2sgZnVuY3Rpb24gcHJvdmlkZWRcbiAqICAgICAgdGhhdCBpcyBpbnZva2VkIG9uIGVhY2ggb3B0aW1pemF0aW9uIHN0ZXAuXG4gKiAzKSBpbml0aWFsaXplRml0IC8gc3RlcDogbWFudWFsbHkgaW5pdGlhbGl6ZSB0aGUgYWxnb3JpdGhtIHRoZW4gZXhwbGljdGx5XG4gKiAgICAgIHN0ZXAgdGhyb3VnaCBlYWNoIGVwb2NoIG9mIHRoZSBTR0Qgb3B0aW1pemF0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBVTUFQIHtcbiAgICBsZWFybmluZ1JhdGUgPSAxLjA7XG4gICAgbG9jYWxDb25uZWN0aXZpdHkgPSAxLjA7XG4gICAgbWluRGlzdCA9IDAuMTtcbiAgICBuQ29tcG9uZW50cyA9IDI7XG4gICAgbkVwb2NocyA9IDA7XG4gICAgbk5laWdoYm9ycyA9IDE1O1xuICAgIG5lZ2F0aXZlU2FtcGxlUmF0ZSA9IDU7XG4gICAgcmFuZG9tID0gTWF0aC5yYW5kb207XG4gICAgcmVwdWxzaW9uU3RyZW5ndGggPSAxLjA7XG4gICAgc2V0T3BNaXhSYXRpbyA9IDEuMDtcbiAgICBzcHJlYWQgPSAxLjA7XG4gICAgdHJhbnNmb3JtUXVldWVTaXplID0gNC4wO1xuICAgIC8vIFN1cGVydmlzZWQgcHJvamVjdGlvbiBwYXJhbXNcbiAgICB0YXJnZXRNZXRyaWMgPSBcImNhdGVnb3JpY2FsXCIgLyogVGFyZ2V0TWV0cmljLmNhdGVnb3JpY2FsICovO1xuICAgIHRhcmdldFdlaWdodCA9IDAuNTtcbiAgICB0YXJnZXROTmVpZ2hib3JzID0gMTU7XG4gICAgZGlzdGFuY2VGbiA9IG51bWVyaWM7XG4gICAgLy8gS05OIHN0YXRlIChjYW4gYmUgcHJlY29tcHV0ZWQgYW5kIHN1cHBsaWVkIHZpYSBpbml0aWFsaXplRml0KVxuICAgIGtubkluZGljZXM7XG4gICAga25uRGlzdGFuY2VzO1xuICAgIC8vIEludGVybmFsIGdyYXBoIGNvbm5lY3Rpdml0eSByZXByZXNlbnRhdGlvblxuICAgIGdyYXBoO1xuICAgIFg7XG4gICAgaXNJbml0aWFsaXplZCA9IGZhbHNlO1xuICAgIHJwRm9yZXN0ID0gW107XG4gICAgaW5pdEZyb21SYW5kb207XG4gICAgaW5pdEZyb21UcmVlO1xuICAgIHNlYXJjaDtcbiAgICBzZWFyY2hHcmFwaDtcbiAgICAvLyBTdXBlcnZpc2VkIHByb2plY3Rpb24gbGFiZWxzIC8gdGFyZ2V0c1xuICAgIFk7XG4gICAgLy8gUHJvamVjdGVkIGVtYmVkZGluZ1xuICAgIGVtYmVkZGluZyA9IFtdO1xuICAgIG9wdGltaXphdGlvblN0YXRlID0gbmV3IE9wdGltaXphdGlvblN0YXRlKCk7XG4gICAgZ2V0IG5laWdoYm9ycygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubk5laWdoYm9ycztcbiAgICB9XG4gICAgY29uc3RydWN0b3IocGFyYW1zID0ge30pIHtcbiAgICAgICAgY29uc3Qgc2V0UGFyYW0gPSAoa2V5KSA9PiB7XG4gICAgICAgICAgICAvL0B0cy1pZ25vcmVcbiAgICAgICAgICAgIGlmIChwYXJhbXNba2V5XSAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgIHRoaXNba2V5XSA9IHBhcmFtc1trZXldO1xuICAgICAgICB9O1xuICAgICAgICBzZXRQYXJhbSgnZGlzdGFuY2VGbicpO1xuICAgICAgICBzZXRQYXJhbSgnbGVhcm5pbmdSYXRlJyk7XG4gICAgICAgIHNldFBhcmFtKCdsb2NhbENvbm5lY3Rpdml0eScpO1xuICAgICAgICBzZXRQYXJhbSgnbWluRGlzdCcpO1xuICAgICAgICBzZXRQYXJhbSgnbkNvbXBvbmVudHMnKTtcbiAgICAgICAgc2V0UGFyYW0oJ25FcG9jaHMnKTtcbiAgICAgICAgc2V0UGFyYW0oJ25OZWlnaGJvcnMnKTtcbiAgICAgICAgc2V0UGFyYW0oJ25lZ2F0aXZlU2FtcGxlUmF0ZScpO1xuICAgICAgICBzZXRQYXJhbSgncmFuZG9tJyk7XG4gICAgICAgIHNldFBhcmFtKCdyZXB1bHNpb25TdHJlbmd0aCcpO1xuICAgICAgICBzZXRQYXJhbSgnc2V0T3BNaXhSYXRpbycpO1xuICAgICAgICBzZXRQYXJhbSgnc3ByZWFkJyk7XG4gICAgICAgIHNldFBhcmFtKCd0cmFuc2Zvcm1RdWV1ZVNpemUnKTtcbiAgICAgICAgdGhpcy50YXJnZXROTmVpZ2hib3JzID0gcGFyYW1zLm5OZWlnaGJvcnMgfHwgdGhpcy5uTmVpZ2hib3JzIHx8IHRoaXMudGFyZ2V0Tk5laWdoYm9ycztcbiAgICB9XG4gICAgLyoqXG4gICAgICogRml0IHRoZSBkYXRhIHRvIGEgcHJvamVjdGVkIGVtYmVkZGluZyBzcGFjZSBzeW5jaHJvbm91c2x5LlxuICAgICAqL1xuICAgIGZpdChYKSB7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZUZpdChYKTtcbiAgICAgICAgdGhpcy5vcHRpbWl6ZUxheW91dCgpO1xuICAgICAgICByZXR1cm4gdGhpcy5lbWJlZGRpbmc7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEZpdCB0aGUgZGF0YSB0byBhIHByb2plY3RlZCBlbWJlZGRpbmcgc3BhY2UgYXN5bmNocm9ub3VzbHksIHdpdGggYSBjYWxsYmFja1xuICAgICAqIGZ1bmN0aW9uIGludm9rZWQgb24gZXZlcnkgZXBvY2ggb2Ygb3B0aW1pemF0aW9uLlxuICAgICAqL1xuICAgIGFzeW5jIGZpdEFzeW5jKFgsIGNhbGxiYWNrID0gKCkgPT4gdHJ1ZSkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVGaXQoWCk7XG4gICAgICAgIGF3YWl0IHRoaXMub3B0aW1pemVMYXlvdXRBc3luYyhjYWxsYmFjayk7XG4gICAgICAgIHJldHVybiB0aGlzLmVtYmVkZGluZztcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZXMgcGFyYW1ldGVycyBuZWVkZWQgZm9yIHN1cGVydmlzZWQgcHJvamVjdGlvbi5cbiAgICAgKi9cbiAgICBzZXRTdXBlcnZpc2VkUHJvamVjdGlvbihZLCBwYXJhbXMgPSB7fSkge1xuICAgICAgICB0aGlzLlkgPSBZO1xuICAgICAgICB0aGlzLnRhcmdldE1ldHJpYyA9IHBhcmFtcy50YXJnZXRNZXRyaWMgfHwgdGhpcy50YXJnZXRNZXRyaWM7XG4gICAgICAgIHRoaXMudGFyZ2V0V2VpZ2h0ID0gcGFyYW1zLnRhcmdldFdlaWdodCB8fCB0aGlzLnRhcmdldFdlaWdodDtcbiAgICAgICAgdGhpcy50YXJnZXROTmVpZ2hib3JzID0gcGFyYW1zLnRhcmdldE5OZWlnaGJvcnMgfHwgdGhpcy50YXJnZXROTmVpZ2hib3JzO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJbml0aWFsaXplcyB1bWFwIHdpdGggcHJlY29tcHV0ZWQgS05OIGluZGljZXMgYW5kIGRpc3RhbmNlcy5cbiAgICAgKi9cbiAgICBzZXRQcmVjb21wdXRlZEtOTihrbm5JbmRpY2VzLCBrbm5EaXN0YW5jZXMpIHtcbiAgICAgICAgdGhpcy5rbm5JbmRpY2VzID0ga25uSW5kaWNlcztcbiAgICAgICAgdGhpcy5rbm5EaXN0YW5jZXMgPSBrbm5EaXN0YW5jZXM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEluaXRpYWxpemVzIGZpdCBieSBjb21wdXRpbmcgS05OIGFuZCBhIGZ1enp5IHNpbXBsaWNpYWwgc2V0LCBhcyB3ZWxsIGFzXG4gICAgICogaW5pdGlhbGl6aW5nIHRoZSBwcm9qZWN0ZWQgZW1iZWRkaW5ncy4gU2V0cyB0aGUgb3B0aW1pemF0aW9uIHN0YXRlIGFoZWFkXG4gICAgICogb2Ygb3B0aW1pemF0aW9uIHN0ZXBzLiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgZXBvY2hzIHRvIGJlIHVzZWQgZm9yIHRoZVxuICAgICAqIFNHRCBvcHRpbWl6YXRpb24uXG4gICAgICovXG4gICAgaW5pdGlhbGl6ZUZpdChYKSB7XG4gICAgICAgIGlmIChYLmxlbmd0aCA8PSB0aGlzLm5OZWlnaGJvcnMpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vdCBlbm91Z2ggZGF0YSBwb2ludHMgKCR7WC5sZW5ndGh9KSB0byBjcmVhdGUgbk5laWdoYm9yczogJHt0aGlzLm5OZWlnaGJvcnN9LiAgQWRkIG1vcmUgZGF0YSBwb2ludHMgb3IgYWRqdXN0IHRoZSBjb25maWd1cmF0aW9uLmApO1xuICAgICAgICAvLyBXZSBkb24ndCBuZWVkIHRvIHJlaW5pdGlhbGl6ZSBpZiB3ZSd2ZSBhbHJlYWR5IGluaXRpYWxpemVkIGZvciB0aGlzIGRhdGEuXG4gICAgICAgIGlmICh0aGlzLlggPT09IFggJiYgdGhpcy5pc0luaXRpYWxpemVkKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TkVwb2NocygpO1xuICAgICAgICB0aGlzLlggPSBYO1xuICAgICAgICBpZiAoIXRoaXMua25uSW5kaWNlcyAmJiAhdGhpcy5rbm5EaXN0YW5jZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGtublJlc3VsdHMgPSB0aGlzLm5lYXJlc3ROZWlnaGJvcnMoWCk7XG4gICAgICAgICAgICB0aGlzLmtubkluZGljZXMgPSBrbm5SZXN1bHRzLmtubkluZGljZXM7XG4gICAgICAgICAgICB0aGlzLmtubkRpc3RhbmNlcyA9IGtublJlc3VsdHMua25uRGlzdGFuY2VzO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ3JhcGggPSB0aGlzLmZ1enp5U2ltcGxpY2lhbFNldChYLCB0aGlzLm5OZWlnaGJvcnMsIHRoaXMuc2V0T3BNaXhSYXRpbyk7XG4gICAgICAgIC8vIFNldCB1cCB0aGUgc2VhcmNoIGdyYXBoIGZvciBzdWJzZXF1ZW50IHRyYW5zZm9ybWF0aW9uLlxuICAgICAgICB0aGlzLm1ha2VTZWFyY2hGbnMoKTtcbiAgICAgICAgdGhpcy5zZWFyY2hHcmFwaCA9IHRoaXMubWFrZVNlYXJjaEdyYXBoKFgpO1xuICAgICAgICAvLyBDaGVjayBpZiBzdXBlcnZpc2VkIHByb2plY3Rpb24sIHRoZW4gYWRqdXN0IHRoZSBncmFwaC5cbiAgICAgICAgdGhpcy5wcm9jZXNzR3JhcGhGb3JTdXBlcnZpc2VkUHJvamVjdGlvbigpO1xuICAgICAgICBjb25zdCB7IGhlYWQsIHRhaWwsIGVwb2Noc1BlclNhbXBsZSwgfSA9IHRoaXMuaW5pdGlhbGl6ZVNpbXBsaWNpYWxTZXRFbWJlZGRpbmcoKTtcbiAgICAgICAgLy8gU2V0IHRoZSBvcHRpbWl6YXRpb24gcm91dGluZSBzdGF0ZVxuICAgICAgICB0aGlzLm9wdGltaXphdGlvblN0YXRlLmhlYWQgPSBoZWFkO1xuICAgICAgICB0aGlzLm9wdGltaXphdGlvblN0YXRlLnRhaWwgPSB0YWlsO1xuICAgICAgICB0aGlzLm9wdGltaXphdGlvblN0YXRlLmVwb2Noc1BlclNhbXBsZSA9IGVwb2Noc1BlclNhbXBsZTtcbiAgICAgICAgLy8gTm93LCBpbml0aWFsaXplIHRoZSBvcHRpbWl6YXRpb24gc3RlcHNcbiAgICAgICAgdGhpcy5pbml0aWFsaXplT3B0aW1pemF0aW9uKCk7XG4gICAgICAgIHRoaXMucHJlcGFyZUZvck9wdGltaXphdGlvbkxvb3AoKTtcbiAgICAgICAgdGhpcy5pc0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TkVwb2NocygpO1xuICAgIH1cbiAgICBtYWtlU2VhcmNoRm5zKCkge1xuICAgICAgICBjb25zdCB7IGluaXRGcm9tVHJlZSwgaW5pdEZyb21SYW5kb20gfSA9IG5uRGVzY2VudC5tYWtlSW5pdGlhbGl6YXRpb25zKHRoaXMuZGlzdGFuY2VGbik7XG4gICAgICAgIHRoaXMuaW5pdEZyb21UcmVlID0gaW5pdEZyb21UcmVlO1xuICAgICAgICB0aGlzLmluaXRGcm9tUmFuZG9tID0gaW5pdEZyb21SYW5kb207XG4gICAgICAgIHRoaXMuc2VhcmNoID0gbm5EZXNjZW50Lm1ha2VJbml0aWFsaXplZE5OU2VhcmNoKHRoaXMuZGlzdGFuY2VGbik7XG4gICAgfVxuICAgIG1ha2VTZWFyY2hHcmFwaChYKSB7XG4gICAgICAgIGNvbnN0IGtubkluZGljZXMgPSB0aGlzLmtubkluZGljZXM7XG4gICAgICAgIGNvbnN0IGtubkRpc3RhbmNlcyA9IHRoaXMua25uRGlzdGFuY2VzO1xuICAgICAgICBjb25zdCBkaW1zID0gW1gubGVuZ3RoLCBYLmxlbmd0aF07XG4gICAgICAgIGNvbnN0IHNlYXJjaEdyYXBoID0gbmV3IG1hdHJpeC5TcGFyc2VNYXRyaXgoW10sIFtdLCBbXSwgZGltcyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwga25uSW5kaWNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3Qga25uID0ga25uSW5kaWNlc1tpXTtcbiAgICAgICAgICAgIGNvbnN0IGRpc3RhbmNlcyA9IGtubkRpc3RhbmNlc1tpXTtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwga25uLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmVpZ2hib3IgPSBrbm5bal07XG4gICAgICAgICAgICAgICAgY29uc3QgZGlzdGFuY2UgPSBkaXN0YW5jZXNbal07XG4gICAgICAgICAgICAgICAgaWYgKGRpc3RhbmNlID4gMClcbiAgICAgICAgICAgICAgICAgICAgc2VhcmNoR3JhcGguc2V0KGksIG5laWdoYm9yLCBkaXN0YW5jZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdHJhbnNwb3NlID0gbWF0cml4LnRyYW5zcG9zZShzZWFyY2hHcmFwaCk7XG4gICAgICAgIHJldHVybiBtYXRyaXgubWF4aW11bShzZWFyY2hHcmFwaCwgdHJhbnNwb3NlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogVHJhbnNmb3JtcyBkYXRhIHRvIHRoZSBleGlzdGluZyBlbWJlZGRpbmcgc3BhY2UuXG4gICAgICovXG4gICAgdHJhbnNmb3JtKHRvVHJhbnNmb3JtKSB7XG4gICAgICAgIC8vIFVzZSB0aGUgcHJldmlvdXMgcmF3RGF0YVxuICAgICAgICBjb25zdCByYXdEYXRhID0gdGhpcy5YO1xuICAgICAgICBpZiAocmF3RGF0YSA9PT0gdW5kZWZpbmVkIHx8IHJhd0RhdGEubGVuZ3RoID09PSAwKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBkYXRhIGhhcyBiZWVuIGZpdC4nKTtcbiAgICAgICAgbGV0IG5OZWlnaGJvcnMgPSBNYXRoLmZsb29yKHRoaXMubk5laWdoYm9ycyAqIHRoaXMudHJhbnNmb3JtUXVldWVTaXplKTtcbiAgICAgICAgbk5laWdoYm9ycyA9IE1hdGgubWluKHJhd0RhdGEubGVuZ3RoLCBuTmVpZ2hib3JzKTtcbiAgICAgICAgY29uc3QgaW5pdCA9IG5uRGVzY2VudC5pbml0aWFsaXplU2VhcmNoKHRoaXMucnBGb3Jlc3QsIHJhd0RhdGEsIHRvVHJhbnNmb3JtLCBuTmVpZ2hib3JzLCB0aGlzLmluaXRGcm9tUmFuZG9tLCB0aGlzLmluaXRGcm9tVHJlZSwgdGhpcy5yYW5kb20pO1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLnNlYXJjaChyYXdEYXRhLCB0aGlzLnNlYXJjaEdyYXBoLCBpbml0LCB0b1RyYW5zZm9ybSk7XG4gICAgICAgIGxldCB7IGluZGljZXMsIHdlaWdodHM6IGRpc3RhbmNlcyB9ID0gaGVhcC5kZWhlYXBTb3J0KHJlc3VsdCk7XG4gICAgICAgIGluZGljZXMgPSBpbmRpY2VzLm1hcCgoeCkgPT4geC5zbGljZSgwLCB0aGlzLm5OZWlnaGJvcnMpKTtcbiAgICAgICAgZGlzdGFuY2VzID0gZGlzdGFuY2VzLm1hcCgoeCkgPT4geC5zbGljZSgwLCB0aGlzLm5OZWlnaGJvcnMpKTtcbiAgICAgICAgY29uc3QgYWRqdXN0ZWRMb2NhbENvbm5lY3Rpdml0eSA9IE1hdGgubWF4KDAsIHRoaXMubG9jYWxDb25uZWN0aXZpdHkgLSAxKTtcbiAgICAgICAgY29uc3QgeyBzaWdtYXMsIHJob3MgfSA9IHRoaXMuc21vb3RoS05ORGlzdGFuY2UoZGlzdGFuY2VzLCB0aGlzLm5OZWlnaGJvcnMsIGFkanVzdGVkTG9jYWxDb25uZWN0aXZpdHkpO1xuICAgICAgICBjb25zdCB7IHJvd3MsIGNvbHMsIHZhbHMgfSA9IHRoaXMuY29tcHV0ZU1lbWJlcnNoaXBTdHJlbmd0aHMoaW5kaWNlcywgZGlzdGFuY2VzLCBzaWdtYXMsIHJob3MpO1xuICAgICAgICBjb25zdCBzaXplID0gW3RvVHJhbnNmb3JtLmxlbmd0aCwgcmF3RGF0YS5sZW5ndGhdO1xuICAgICAgICBsZXQgZ3JhcGggPSBuZXcgbWF0cml4LlNwYXJzZU1hdHJpeChyb3dzLCBjb2xzLCB2YWxzLCBzaXplKTtcbiAgICAgICAgLy8gVGhpcyB3YXMgYSB2ZXJ5IHNwZWNpYWxseSBjb25zdHJ1Y3RlZCBncmFwaCB3aXRoIGNvbnN0YW50IGRlZ3JlZS5cbiAgICAgICAgLy8gVGhhdCBsZXRzIHVzIGRvIGZhbmN5IHVucGFja2luZyBieSByZXNoYXBpbmcgdGhlIGNzciBtYXRyaXggaW5kaWNlc1xuICAgICAgICAvLyBhbmQgZGF0YS4gRG9pbmcgc28gcmVsaWVzIG9uIHRoZSBjb25zdGFudCBkZWdyZWUgYXNzdW1wdGlvbiFcbiAgICAgICAgY29uc3Qgbm9ybWVkID0gbWF0cml4Lm5vcm1hbGl6ZShncmFwaCwgXCJsMVwiIC8qIG1hdHJpeC5Ob3JtVHlwZS5sMSAqLyk7XG4gICAgICAgIGNvbnN0IGNzck1hdHJpeCA9IG1hdHJpeC5nZXRDU1Iobm9ybWVkKTtcbiAgICAgICAgY29uc3QgblBvaW50cyA9IHRvVHJhbnNmb3JtLmxlbmd0aDtcbiAgICAgICAgY29uc3QgZUluZGljZXMgPSB1dGlscy5yZXNoYXBlMmQoY3NyTWF0cml4LmluZGljZXMsIG5Qb2ludHMsIHRoaXMubk5laWdoYm9ycyk7XG4gICAgICAgIGNvbnN0IGVXZWlnaHRzID0gdXRpbHMucmVzaGFwZTJkKGNzck1hdHJpeC52YWx1ZXMsIG5Qb2ludHMsIHRoaXMubk5laWdoYm9ycyk7XG4gICAgICAgIGNvbnN0IGVtYmVkZGluZyA9IGluaXRUcmFuc2Zvcm0oZUluZGljZXMsIGVXZWlnaHRzLCB0aGlzLmVtYmVkZGluZyk7XG4gICAgICAgIGNvbnN0IG5FcG9jaHMgPSB0aGlzLm5FcG9jaHMgP1xuICAgICAgICAgICAgdGhpcy5uRXBvY2hzIC8gMyA6XG4gICAgICAgICAgICBncmFwaC5uUm93cyA8PSAxMDAwMCA/XG4gICAgICAgICAgICAgICAgMTAwIDpcbiAgICAgICAgICAgICAgICAzMDtcbiAgICAgICAgY29uc3QgZ3JhcGhNYXggPSBncmFwaFxuICAgICAgICAgICAgLmdldFZhbHVlcygpXG4gICAgICAgICAgICAucmVkdWNlKChtYXgsIHZhbCkgPT4gKHZhbCA+IG1heCA/IHZhbCA6IG1heCksIDApO1xuICAgICAgICBncmFwaCA9IGdyYXBoLm1hcCgodmFsdWUpID0+ICh2YWx1ZSA8IGdyYXBoTWF4IC8gbkVwb2NocyA/IDAgOiB2YWx1ZSkpO1xuICAgICAgICBncmFwaCA9IG1hdHJpeC5lbGltaW5hdGVaZXJvcyhncmFwaCk7XG4gICAgICAgIGNvbnN0IGVwb2Noc1BlclNhbXBsZSA9IHRoaXMubWFrZUVwb2Noc1BlclNhbXBsZShncmFwaC5nZXRWYWx1ZXMoKSwgbkVwb2Nocyk7XG4gICAgICAgIGNvbnN0IGhlYWQgPSBncmFwaC5nZXRSb3dzKCk7XG4gICAgICAgIGNvbnN0IHRhaWwgPSBncmFwaC5nZXRDb2xzKCk7XG4gICAgICAgIC8vIEluaXRpYWxpemUgb3B0aW1pemF0aW9uIHNsaWdodGx5IGRpZmZlcmVudGx5IHRoYW4gdGhlIGZpdCBtZXRob2QuXG4gICAgICAgIHRoaXMuYXNzaWduT3B0aW1pemF0aW9uU3RhdGVQYXJhbWV0ZXJzKHtcbiAgICAgICAgICAgIGhlYWRFbWJlZGRpbmc6IGVtYmVkZGluZyxcbiAgICAgICAgICAgIHRhaWxFbWJlZGRpbmc6IHRoaXMuZW1iZWRkaW5nLFxuICAgICAgICAgICAgaGVhZCxcbiAgICAgICAgICAgIHRhaWwsXG4gICAgICAgICAgICBjdXJyZW50RXBvY2g6IDAsXG4gICAgICAgICAgICBuRXBvY2hzLFxuICAgICAgICAgICAgblZlcnRpY2VzOiBncmFwaC5nZXREaW1zKClbMV0sXG4gICAgICAgICAgICBlcG9jaHNQZXJTYW1wbGUsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnByZXBhcmVGb3JPcHRpbWl6YXRpb25Mb29wKCk7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGltaXplTGF5b3V0KCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB3ZSdyZSB1c2luZyBzdXBlcnZpc2VkIHByb2plY3Rpb24sIHRoZW4gcHJvY2VzcyB0aGUgZ3JhcGhcbiAgICAgKiBhY2NvcmRpbmdseS5cbiAgICAgKi9cbiAgICBwcm9jZXNzR3JhcGhGb3JTdXBlcnZpc2VkUHJvamVjdGlvbigpIHtcbiAgICAgICAgY29uc3QgeyBZLCBYIH0gPSB0aGlzO1xuICAgICAgICBpZiAoWSkge1xuICAgICAgICAgICAgaWYgKFkubGVuZ3RoICE9PSBYLmxlbmd0aClcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0xlbmd0aCBvZiBYIGFuZCB5IG11c3QgYmUgZXF1YWwnKTtcbiAgICAgICAgICAgIGlmICh0aGlzLnRhcmdldE1ldHJpYyA9PT0gXCJjYXRlZ29yaWNhbFwiIC8qIFRhcmdldE1ldHJpYy5jYXRlZ29yaWNhbCAqLykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGx0ID0gdGhpcy50YXJnZXRXZWlnaHQgPCAxLjA7XG4gICAgICAgICAgICAgICAgY29uc3QgZmFyRGlzdCA9IGx0ID8gMi41ICogKDEuMCAvICgxLjAgLSB0aGlzLnRhcmdldFdlaWdodCkpIDogMS4wZTEyO1xuICAgICAgICAgICAgICAgIHRoaXMuZ3JhcGggPSB0aGlzLmNhdGVnb3JpY2FsU2ltcGxpY2lhbFNldEludGVyc2VjdGlvbih0aGlzLmdyYXBoLCBZLCBmYXJEaXN0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFRPRE8gKGFuZHljb2VuZW5AKTogYWRkIG5vbi1jYXRlZ29yaWNhbCBzdXBlcnZpc2VkIGVtYmVkZGluZ3MuXG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAgICogTWFudWFsbHkgc3RlcCB0aHJvdWdoIHRoZSBvcHRpbWl6YXRpb24gcHJvY2VzcyBvbmUgZXBvY2ggYXQgYSB0aW1lLlxuICAgICAqL1xuICAgIHN0ZXAoKSB7XG4gICAgICAgIGNvbnN0IHsgY3VycmVudEVwb2NoIH0gPSB0aGlzLm9wdGltaXphdGlvblN0YXRlO1xuICAgICAgICBpZiAoY3VycmVudEVwb2NoIDwgdGhpcy5nZXRORXBvY2hzKCkpXG4gICAgICAgICAgICB0aGlzLm9wdGltaXplTGF5b3V0U3RlcChjdXJyZW50RXBvY2gpO1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpbWl6YXRpb25TdGF0ZS5jdXJyZW50RXBvY2g7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGNvbXB1dGVkIHByb2plY3RlZCBlbWJlZGRpbmcuXG4gICAgICovXG4gICAgZ2V0RW1iZWRkaW5nKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbWJlZGRpbmc7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENvbXB1dGUgdGhlIGBgbk5laWdoYm9yc2BgIG5lYXJlc3QgcG9pbnRzIGZvciBlYWNoIGRhdGEgcG9pbnQgaW4gYGBYYGBcbiAgICAgKiBUaGlzIG1heSBiZSBleGFjdCwgYnV0IG1vcmUgbGlrZWx5IGlzIGFwcHJveGltYXRlZCB2aWEgbmVhcmVzdCBuZWlnaGJvclxuICAgICAqIGRlc2NlbnQuXG4gICAgICovXG4gICAgbmVhcmVzdE5laWdoYm9ycyhYKSB7XG4gICAgICAgIGNvbnN0IHsgZGlzdGFuY2VGbiwgbk5laWdoYm9ycyB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgbG9nMiA9IChuKSA9PiBNYXRoLmxvZyhuKSAvIE1hdGgubG9nKDIpO1xuICAgICAgICBjb25zdCBtZXRyaWNOTkRlc2NlbnQgPSBubkRlc2NlbnQubWFrZU5ORGVzY2VudChkaXN0YW5jZUZuLCB0aGlzLnJhbmRvbSk7XG4gICAgICAgIC8vIEhhbmRsZSBweXRob24zIHJvdW5kaW5nIGRvd24gZnJvbSAwLjUgZGlzY3JwYW5jeVxuICAgICAgICBjb25zdCByb3VuZCA9IChuKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gbiA9PT0gMC41ID8gMCA6IE1hdGgucm91bmQobik7XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG5UcmVlcyA9IDUgKyBNYXRoLmZsb29yKHJvdW5kKFgubGVuZ3RoICoqIDAuNSAvIDIwLjApKTtcbiAgICAgICAgY29uc3Qgbkl0ZXJzID0gTWF0aC5tYXgoNSwgTWF0aC5mbG9vcihNYXRoLnJvdW5kKGxvZzIoWC5sZW5ndGgpKSkpO1xuICAgICAgICB0aGlzLnJwRm9yZXN0ID0gdHJlZS5tYWtlRm9yZXN0KFgsIG5OZWlnaGJvcnMsIG5UcmVlcywgdGhpcy5yYW5kb20pO1xuICAgICAgICBjb25zdCBsZWFmQXJyYXkgPSB0cmVlLm1ha2VMZWFmQXJyYXkodGhpcy5ycEZvcmVzdCk7XG4gICAgICAgIGNvbnN0IHsgaW5kaWNlcywgd2VpZ2h0cyB9ID0gbWV0cmljTk5EZXNjZW50KFgsIGxlYWZBcnJheSwgbk5laWdoYm9ycywgbkl0ZXJzKTtcbiAgICAgICAgcmV0dXJuIHsga25uSW5kaWNlczogaW5kaWNlcywga25uRGlzdGFuY2VzOiB3ZWlnaHRzIH07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdpdmVuIGEgc2V0IG9mIGRhdGEgWCwgYSBuZWlnaGJvcmhvb2Qgc2l6ZSwgYW5kIGEgbWVhc3VyZSBvZiBkaXN0YW5jZVxuICAgICAqIGNvbXB1dGUgdGhlIGZ1enp5IHNpbXBsaWNpYWwgc2V0IChoZXJlIHJlcHJlc2VudGVkIGFzIGEgZnV6enkgZ3JhcGggaW5cbiAgICAgKiB0aGUgZm9ybSBvZiBhIHNwYXJzZSBtYXRyaXgpIGFzc29jaWF0ZWQgdG8gdGhlIGRhdGEuIFRoaXMgaXMgZG9uZSBieVxuICAgICAqIGxvY2FsbHkgYXBwcm94aW1hdGluZyBnZW9kZXNpYyBkaXN0YW5jZSBhdCBlYWNoIHBvaW50LCBjcmVhdGluZyBhIGZ1enp5XG4gICAgICogc2ltcGxpY2lhbCBzZXQgZm9yIGVhY2ggc3VjaCBwb2ludCwgYW5kIHRoZW4gY29tYmluaW5nIGFsbCB0aGUgbG9jYWxcbiAgICAgKiBmdXp6eSBzaW1wbGljaWFsIHNldHMgaW50byBhIGdsb2JhbCBvbmUgdmlhIGEgZnV6enkgdW5pb24uXG4gICAgICovXG4gICAgZnV6enlTaW1wbGljaWFsU2V0KFgsIG5OZWlnaGJvcnMsIHNldE9wTWl4UmF0aW8gPSAxLjApIHtcbiAgICAgICAgY29uc3QgeyBrbm5JbmRpY2VzID0gW10sIGtubkRpc3RhbmNlcyA9IFtdLCBsb2NhbENvbm5lY3Rpdml0eSB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgeyBzaWdtYXMsIHJob3MgfSA9IHRoaXMuc21vb3RoS05ORGlzdGFuY2Uoa25uRGlzdGFuY2VzLCBuTmVpZ2hib3JzLCBsb2NhbENvbm5lY3Rpdml0eSk7XG4gICAgICAgIGNvbnN0IHsgcm93cywgY29scywgdmFscyB9ID0gdGhpcy5jb21wdXRlTWVtYmVyc2hpcFN0cmVuZ3Rocyhrbm5JbmRpY2VzLCBrbm5EaXN0YW5jZXMsIHNpZ21hcywgcmhvcyk7XG4gICAgICAgIGNvbnN0IHNpemUgPSBbWC5sZW5ndGgsIFgubGVuZ3RoXTtcbiAgICAgICAgY29uc3Qgc3BhcnNlTWF0cml4ID0gbmV3IG1hdHJpeC5TcGFyc2VNYXRyaXgocm93cywgY29scywgdmFscywgc2l6ZSk7XG4gICAgICAgIGNvbnN0IHRyYW5zcG9zZSA9IG1hdHJpeC50cmFuc3Bvc2Uoc3BhcnNlTWF0cml4KTtcbiAgICAgICAgY29uc3QgcHJvZE1hdHJpeCA9IG1hdHJpeC5wYWlyd2lzZU11bHRpcGx5KHNwYXJzZU1hdHJpeCwgdHJhbnNwb3NlKTtcbiAgICAgICAgY29uc3QgYSA9IG1hdHJpeC5zdWJ0cmFjdChtYXRyaXguYWRkKHNwYXJzZU1hdHJpeCwgdHJhbnNwb3NlKSwgcHJvZE1hdHJpeCk7XG4gICAgICAgIGNvbnN0IGIgPSBtYXRyaXgubXVsdGlwbHlTY2FsYXIoYSwgc2V0T3BNaXhSYXRpbyk7XG4gICAgICAgIGNvbnN0IGMgPSBtYXRyaXgubXVsdGlwbHlTY2FsYXIocHJvZE1hdHJpeCwgMS4wIC0gc2V0T3BNaXhSYXRpbyk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IG1hdHJpeC5hZGQoYiwgYyk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENvbWJpbmUgYSBmdXp6eSBzaW1wbGljaWFsIHNldCB3aXRoIGFub3RoZXIgZnV6enkgc2ltcGxpY2lhbCBzZXRcbiAgICAgKiBnZW5lcmF0ZWQgZnJvbSBjYXRlZ29yaWNhbCBkYXRhIHVzaW5nIGNhdGVnb3JpY2FsIGRpc3RhbmNlcy4gVGhlIHRhcmdldFxuICAgICAqIGRhdGEgaXMgYXNzdW1lZCB0byBiZSBjYXRlZ29yaWNhbCBsYWJlbCBkYXRhIChhIHZlY3RvciBvZiBsYWJlbHMpLFxuICAgICAqIGFuZCB0aGlzIHdpbGwgdXBkYXRlIHRoZSBmdXp6eSBzaW1wbGljaWFsIHNldCB0byByZXNwZWN0IHRoYXQgbGFiZWwgZGF0YS5cbiAgICAgKi9cbiAgICBjYXRlZ29yaWNhbFNpbXBsaWNpYWxTZXRJbnRlcnNlY3Rpb24oc2ltcGxpY2lhbFNldCwgdGFyZ2V0LCBmYXJEaXN0LCB1bmtub3duRGlzdCA9IDEuMCkge1xuICAgICAgICBsZXQgaW50ZXJzZWN0aW9uID0gZmFzdEludGVyc2VjdGlvbihzaW1wbGljaWFsU2V0LCB0YXJnZXQsIHVua25vd25EaXN0LCBmYXJEaXN0KTtcbiAgICAgICAgaW50ZXJzZWN0aW9uID0gbWF0cml4LmVsaW1pbmF0ZVplcm9zKGludGVyc2VjdGlvbik7XG4gICAgICAgIHJldHVybiByZXNldExvY2FsQ29ubmVjdGl2aXR5KGludGVyc2VjdGlvbik7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENvbXB1dGUgYSBjb250aW51b3VzIHZlcnNpb24gb2YgdGhlIGRpc3RhbmNlIHRvIHRoZSBrdGggbmVhcmVzdFxuICAgICAqIG5laWdoYm9yLiBUaGF0IGlzLCB0aGlzIGlzIHNpbWlsYXIgdG8ga25uLWRpc3RhbmNlIGJ1dCBhbGxvd3MgY29udGludW91c1xuICAgICAqIGsgdmFsdWVzIHJhdGhlciB0aGFuIHJlcXVpcmluZyBhbiBpbnRlZ3JhbCBrLiBJbiBlc3NjZW5jZSB3ZSBhcmUgc2ltcGx5XG4gICAgICogY29tcHV0aW5nIHRoZSBkaXN0YW5jZSBzdWNoIHRoYXQgdGhlIGNhcmRpbmFsaXR5IG9mIGZ1enp5IHNldCB3ZSBnZW5lcmF0ZVxuICAgICAqIGlzIGsuXG4gICAgICovXG4gICAgc21vb3RoS05ORGlzdGFuY2UoZGlzdGFuY2VzLCBrLCBsb2NhbENvbm5lY3Rpdml0eSA9IDEuMCwgbkl0ZXIgPSA2NCwgYmFuZHdpZHRoID0gMS4wKSB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IChNYXRoLmxvZyhrKSAvIE1hdGgubG9nKDIpKSAqIGJhbmR3aWR0aDtcbiAgICAgICAgY29uc3QgcmhvID0gdXRpbHMuemVyb3MoZGlzdGFuY2VzLmxlbmd0aCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHV0aWxzLnplcm9zKGRpc3RhbmNlcy5sZW5ndGgpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRpc3RhbmNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbGV0IGxvID0gMC4wO1xuICAgICAgICAgICAgbGV0IGhpID0gSW5maW5pdHk7XG4gICAgICAgICAgICBsZXQgbWlkID0gMS4wO1xuICAgICAgICAgICAgLy8gVE9ETzogVGhpcyBpcyB2ZXJ5IGluZWZmaWNpZW50LCBidXQgd2lsbCBkbyBmb3Igbm93LiBGSVhNRVxuICAgICAgICAgICAgY29uc3QgaXRoRGlzdGFuY2VzID0gZGlzdGFuY2VzW2ldO1xuICAgICAgICAgICAgY29uc3Qgbm9uWmVyb0Rpc3RzID0gaXRoRGlzdGFuY2VzLmZpbHRlcigoZCkgPT4gZCA+IDAuMCk7XG4gICAgICAgICAgICBpZiAobm9uWmVyb0Rpc3RzLmxlbmd0aCA+PSBsb2NhbENvbm5lY3Rpdml0eSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gTWF0aC5mbG9vcihsb2NhbENvbm5lY3Rpdml0eSk7XG4gICAgICAgICAgICAgICAgY29uc3QgaW50ZXJwb2xhdGlvbiA9IGxvY2FsQ29ubmVjdGl2aXR5IC0gaW5kZXg7XG4gICAgICAgICAgICAgICAgaWYgKGluZGV4ID4gMCkge1xuICAgICAgICAgICAgICAgICAgICByaG9baV0gPSBub25aZXJvRGlzdHNbaW5kZXggLSAxXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGludGVycG9sYXRpb24gPiBTTU9PVEhfS19UT0xFUkFOQ0UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJob1tpXSArPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludGVycG9sYXRpb24gKiAobm9uWmVyb0Rpc3RzW2luZGV4XSAtIG5vblplcm9EaXN0c1tpbmRleCAtIDFdKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmhvW2ldID0gaW50ZXJwb2xhdGlvbiAqIG5vblplcm9EaXN0c1swXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChub25aZXJvRGlzdHMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHJob1tpXSA9IHV0aWxzLm1heChub25aZXJvRGlzdHMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBuSXRlcjsgbisrKSB7XG4gICAgICAgICAgICAgICAgbGV0IHBzdW0gPSAwLjA7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDE7IGogPCBkaXN0YW5jZXNbaV0ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZCA9IGRpc3RhbmNlc1tpXVtqXSAtIHJob1tpXTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGQgPiAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgcHN1bSArPSBNYXRoLmV4cCgtKGQgLyBtaWQpKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcHN1bSArPSAxLjA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChNYXRoLmFicyhwc3VtIC0gdGFyZ2V0KSA8IFNNT09USF9LX1RPTEVSQU5DRSlcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgaWYgKHBzdW0gPiB0YXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgaGkgPSBtaWQ7XG4gICAgICAgICAgICAgICAgICAgIG1pZCA9IChsbyArIGhpKSAvIDIuMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGxvID0gbWlkO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaGkgPT09IEluZmluaXR5KVxuICAgICAgICAgICAgICAgICAgICAgICAgbWlkICo9IDI7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pZCA9IChsbyArIGhpKSAvIDIuMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXN1bHRbaV0gPSBtaWQ7XG4gICAgICAgICAgICAvLyBUT0RPOiBUaGlzIGlzIHZlcnkgaW5lZmZpY2llbnQsIGJ1dCB3aWxsIGRvIGZvciBub3cuIEZJWE1FXG4gICAgICAgICAgICBpZiAocmhvW2ldID4gMC4wKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVhbkl0aERpc3RhbmNlcyA9IHV0aWxzLm1lYW4oaXRoRGlzdGFuY2VzKTtcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0W2ldIDwgTUlOX0tfRElTVF9TQ0FMRSAqIG1lYW5JdGhEaXN0YW5jZXMpXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdFtpXSA9IE1JTl9LX0RJU1RfU0NBTEUgKiBtZWFuSXRoRGlzdGFuY2VzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVhbkRpc3RhbmNlcyA9IHV0aWxzLm1lYW4oZGlzdGFuY2VzLm1hcCh1dGlscy5tZWFuKSk7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdFtpXSA8IE1JTl9LX0RJU1RfU0NBTEUgKiBtZWFuRGlzdGFuY2VzKVxuICAgICAgICAgICAgICAgICAgICByZXN1bHRbaV0gPSBNSU5fS19ESVNUX1NDQUxFICogbWVhbkRpc3RhbmNlcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBzaWdtYXM6IHJlc3VsdCwgcmhvczogcmhvIH07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIENvbnN0cnVjdCB0aGUgbWVtYmVyc2hpcCBzdHJlbmd0aCBkYXRhIGZvciB0aGUgMS1za2VsZXRvbiBvZiBlYWNoIGxvY2FsXG4gICAgICogZnV6enkgc2ltcGxpY2lhbCBzZXQgLS0gdGhpcyBpcyBmb3JtZWQgYXMgYSBzcGFyc2UgbWF0cml4IHdoZXJlIGVhY2ggcm93IGlzXG4gICAgICogYSBsb2NhbCBmdXp6eSBzaW1wbGljaWFsIHNldCwgd2l0aCBhIG1lbWJlcnNoaXAgc3RyZW5ndGggZm9yIHRoZVxuICAgICAqIDEtc2ltcGxleCB0byBlYWNoIG90aGVyIGRhdGEgcG9pbnQuXG4gICAgICovXG4gICAgY29tcHV0ZU1lbWJlcnNoaXBTdHJlbmd0aHMoa25uSW5kaWNlcywga25uRGlzdGFuY2VzLCBzaWdtYXMsIHJob3MpIHtcbiAgICAgICAgY29uc3QgblNhbXBsZXMgPSBrbm5JbmRpY2VzLmxlbmd0aDtcbiAgICAgICAgY29uc3Qgbk5laWdoYm9ycyA9IGtubkluZGljZXNbMF0ubGVuZ3RoO1xuICAgICAgICBjb25zdCByb3dzID0gdXRpbHMuemVyb3MoblNhbXBsZXMgKiBuTmVpZ2hib3JzKTtcbiAgICAgICAgY29uc3QgY29scyA9IHV0aWxzLnplcm9zKG5TYW1wbGVzICogbk5laWdoYm9ycyk7XG4gICAgICAgIGNvbnN0IHZhbHMgPSB1dGlscy56ZXJvcyhuU2FtcGxlcyAqIG5OZWlnaGJvcnMpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5TYW1wbGVzOyBpKyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgbk5laWdoYm9yczsgaisrKSB7XG4gICAgICAgICAgICAgICAgbGV0IHZhbCA9IDA7XG4gICAgICAgICAgICAgICAgaWYgKGtubkluZGljZXNbaV1bal0gPT09IC0xKVxuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsgLy8gV2UgZGlkbid0IGdldCB0aGUgZnVsbCBrbm4gZm9yIGlcbiAgICAgICAgICAgICAgICBpZiAoa25uSW5kaWNlc1tpXVtqXSA9PT0gaSlcbiAgICAgICAgICAgICAgICAgICAgdmFsID0gMC4wO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKGtubkRpc3RhbmNlc1tpXVtqXSAtIHJob3NbaV0gPD0gMC4wKVxuICAgICAgICAgICAgICAgICAgICB2YWwgPSAxLjA7XG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICB2YWwgPSBNYXRoLmV4cCgtKChrbm5EaXN0YW5jZXNbaV1bal0gLSByaG9zW2ldKSAvIHNpZ21hc1tpXSkpO1xuICAgICAgICAgICAgICAgIHJvd3NbaSAqIG5OZWlnaGJvcnMgKyBqXSA9IGk7XG4gICAgICAgICAgICAgICAgY29sc1tpICogbk5laWdoYm9ycyArIGpdID0ga25uSW5kaWNlc1tpXVtqXTtcbiAgICAgICAgICAgICAgICB2YWxzW2kgKiBuTmVpZ2hib3JzICsgal0gPSB2YWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgcm93cywgY29scywgdmFscyB9O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJbml0aWFsaXplIGEgZnV6enkgc2ltcGxpY2lhbCBzZXQgZW1iZWRkaW5nLCB1c2luZyBhIHNwZWNpZmllZFxuICAgICAqIGluaXRpYWxpc2F0aW9uIG1ldGhvZCBhbmQgdGhlbiBtaW5pbWl6aW5nIHRoZSBmdXp6eSBzZXQgY3Jvc3MgZW50cm9weVxuICAgICAqIGJldHdlZW4gdGhlIDEtc2tlbGV0b25zIG9mIHRoZSBoaWdoIGFuZCBsb3cgZGltZW5zaW9uYWwgZnV6enkgc2ltcGxpY2lhbFxuICAgICAqIHNldHMuXG4gICAgICovXG4gICAgaW5pdGlhbGl6ZVNpbXBsaWNpYWxTZXRFbWJlZGRpbmcoKSB7XG4gICAgICAgIGNvbnN0IG5FcG9jaHMgPSB0aGlzLmdldE5FcG9jaHMoKTtcbiAgICAgICAgY29uc3QgeyBuQ29tcG9uZW50cyB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgZ3JhcGhWYWx1ZXMgPSB0aGlzLmdyYXBoLmdldFZhbHVlcygpO1xuICAgICAgICBsZXQgZ3JhcGhNYXggPSAwO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyYXBoVmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGdyYXBoVmFsdWVzW2ldO1xuICAgICAgICAgICAgaWYgKGdyYXBoTWF4IDwgZ3JhcGhWYWx1ZXNbaV0pXG4gICAgICAgICAgICAgICAgZ3JhcGhNYXggPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBncmFwaCA9IHRoaXMuZ3JhcGgubWFwKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHZhbHVlIDwgZ3JhcGhNYXggLyBuRXBvY2hzKVxuICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIFdlJ3JlIG5vdCBjb21wdXRpbmcgdGhlIHNwZWN0cmFsIGluaXRpYWxpemF0aW9uIGluIHRoaXMgaW1wbGVtZW50YXRpb25cbiAgICAgICAgLy8gdW50aWwgd2UgZGV0ZXJtaW5lIGEgYmV0dGVyIGVpZ2VudmFsdWUvZWlnZW52ZWN0b3IgY29tcHV0YXRpb25cbiAgICAgICAgLy8gYXBwcm9hY2hcbiAgICAgICAgdGhpcy5lbWJlZGRpbmcgPSB1dGlscy56ZXJvcyhncmFwaC5uUm93cykubWFwKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB1dGlscy56ZXJvcyhuQ29tcG9uZW50cykubWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdXRpbHMudGF1UmFuZCh0aGlzLnJhbmRvbSkgKiAyMCArIC0xMDsgLy8gUmFuZG9tIGZyb20gLTEwIHRvIDEwXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIC8vIEdldCBncmFwaCBkYXRhIGluIG9yZGVyZWQgd2F5Li4uXG4gICAgICAgIGNvbnN0IHdlaWdodHMgPSBbXTtcbiAgICAgICAgY29uc3QgaGVhZCA9IFtdO1xuICAgICAgICBjb25zdCB0YWlsID0gW107XG4gICAgICAgIGNvbnN0IHJvd0NvbFZhbHVlcyA9IGdyYXBoLmdldEFsbCgpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvd0NvbFZhbHVlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgZW50cnkgPSByb3dDb2xWYWx1ZXNbaV07XG4gICAgICAgICAgICBpZiAoZW50cnkudmFsdWUpIHtcbiAgICAgICAgICAgICAgICB3ZWlnaHRzLnB1c2goZW50cnkudmFsdWUpO1xuICAgICAgICAgICAgICAgIHRhaWwucHVzaChlbnRyeS5yb3cpO1xuICAgICAgICAgICAgICAgIGhlYWQucHVzaChlbnRyeS5jb2wpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGVwb2Noc1BlclNhbXBsZSA9IHRoaXMubWFrZUVwb2Noc1BlclNhbXBsZSh3ZWlnaHRzLCBuRXBvY2hzKTtcbiAgICAgICAgcmV0dXJuIHsgaGVhZCwgdGFpbCwgZXBvY2hzUGVyU2FtcGxlIH07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdpdmVuIGEgc2V0IG9mIHdlaWdodHMgYW5kIG51bWJlciBvZiBlcG9jaHMgZ2VuZXJhdGUgdGhlIG51bWJlciBvZlxuICAgICAqIGVwb2NocyBwZXIgc2FtcGxlIGZvciBlYWNoIHdlaWdodC5cbiAgICAgKi9cbiAgICBtYWtlRXBvY2hzUGVyU2FtcGxlKHdlaWdodHMsIG5FcG9jaHMpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdXRpbHMuZmlsbGVkKHdlaWdodHMubGVuZ3RoLCAtMS4wKTtcbiAgICAgICAgY29uc3QgbWF4ID0gdXRpbHMubWF4KHdlaWdodHMpO1xuICAgICAgICBjb25zdCBuU2FtcGxlcyA9IHdlaWdodHMubWFwKCh3KSA9PiAodyAvIG1heCkgKiBuRXBvY2hzKTtcbiAgICAgICAgblNhbXBsZXMuZm9yRWFjaCgobiwgaSkgPT4ge1xuICAgICAgICAgICAgaWYgKG4gPiAwKVxuICAgICAgICAgICAgICAgIHJlc3VsdFtpXSA9IG5FcG9jaHMgLyBuU2FtcGxlc1tpXTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEFzc2lnbnMgb3B0aW1pemF0aW9uIHN0YXRlIHBhcmFtZXRlcnMgZnJvbSBhIHBhcnRpYWwgb3B0aW1pemF0aW9uIHN0YXRlLlxuICAgICAqL1xuICAgIGFzc2lnbk9wdGltaXphdGlvblN0YXRlUGFyYW1ldGVycyhzdGF0ZSkge1xuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMub3B0aW1pemF0aW9uU3RhdGUsIHN0YXRlKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogU2V0cyBhIGZldyBvcHRpbWl6YXRpb24gc3RhdGUgcGFyYW1ldGVycyB0aGF0IGFyZSBuZWNlc3NhcnkgYmVmb3JlIGVudGVyaW5nXG4gICAgICogdGhlIG9wdGltaXphdGlvbiBzdGVwIGxvb3AuXG4gICAgICovXG4gICAgcHJlcGFyZUZvck9wdGltaXphdGlvbkxvb3AoKSB7XG4gICAgICAgIC8vIEh5cGVycGFyYW1ldGVyc1xuICAgICAgICBjb25zdCB7IHJlcHVsc2lvblN0cmVuZ3RoLCBsZWFybmluZ1JhdGUsIG5lZ2F0aXZlU2FtcGxlUmF0ZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgeyBlcG9jaHNQZXJTYW1wbGUsIGhlYWRFbWJlZGRpbmcsIHRhaWxFbWJlZGRpbmcsIH0gPSB0aGlzLm9wdGltaXphdGlvblN0YXRlO1xuICAgICAgICBjb25zdCBkaW0gPSBoZWFkRW1iZWRkaW5nWzBdLmxlbmd0aDtcbiAgICAgICAgY29uc3QgbW92ZU90aGVyID0gaGVhZEVtYmVkZGluZy5sZW5ndGggPT09IHRhaWxFbWJlZGRpbmcubGVuZ3RoO1xuICAgICAgICBjb25zdCBlcG9jaHNQZXJOZWdhdGl2ZVNhbXBsZSA9IGVwb2Noc1BlclNhbXBsZS5tYXAoKGUpID0+IGUgLyBuZWdhdGl2ZVNhbXBsZVJhdGUpO1xuICAgICAgICBjb25zdCBlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlID0gWy4uLmVwb2Noc1Blck5lZ2F0aXZlU2FtcGxlXTtcbiAgICAgICAgY29uc3QgZXBvY2hPZk5leHRTYW1wbGUgPSBbLi4uZXBvY2hzUGVyU2FtcGxlXTtcbiAgICAgICAgdGhpcy5hc3NpZ25PcHRpbWl6YXRpb25TdGF0ZVBhcmFtZXRlcnMoe1xuICAgICAgICAgICAgZXBvY2hPZk5leHRTYW1wbGUsXG4gICAgICAgICAgICBlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlLFxuICAgICAgICAgICAgZXBvY2hzUGVyTmVnYXRpdmVTYW1wbGUsXG4gICAgICAgICAgICBtb3ZlT3RoZXIsXG4gICAgICAgICAgICBpbml0aWFsQWxwaGE6IGxlYXJuaW5nUmF0ZSxcbiAgICAgICAgICAgIGFscGhhOiBsZWFybmluZ1JhdGUsXG4gICAgICAgICAgICBnYW1tYTogcmVwdWxzaW9uU3RyZW5ndGgsXG4gICAgICAgICAgICBkaW0sXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJbml0aWFsaXplcyBvcHRpbWl6YXRpb24gc3RhdGUgZm9yIHN0ZXB3aXNlIG9wdGltaXphdGlvbi5cbiAgICAgKi9cbiAgICBpbml0aWFsaXplT3B0aW1pemF0aW9uKCkge1xuICAgICAgICAvLyBBbGdvcml0aG0gc3RhdGVcbiAgICAgICAgY29uc3QgaGVhZEVtYmVkZGluZyA9IHRoaXMuZW1iZWRkaW5nO1xuICAgICAgICBjb25zdCB0YWlsRW1iZWRkaW5nID0gdGhpcy5lbWJlZGRpbmc7XG4gICAgICAgIC8vIEluaXRpYWxpemVkIGluIGluaXRpYWxpemVTaW1wbGljaWFsU2V0RW1iZWRkaW5nKClcbiAgICAgICAgY29uc3QgeyBoZWFkLCB0YWlsLCBlcG9jaHNQZXJTYW1wbGUgfSA9IHRoaXMub3B0aW1pemF0aW9uU3RhdGU7XG4gICAgICAgIGNvbnN0IG5FcG9jaHMgPSB0aGlzLmdldE5FcG9jaHMoKTtcbiAgICAgICAgY29uc3QgblZlcnRpY2VzID0gdGhpcy5ncmFwaC5uQ29scztcbiAgICAgICAgY29uc3QgeyBhLCBiIH0gPSBmaW5kQUJQYXJhbXModGhpcy5zcHJlYWQsIHRoaXMubWluRGlzdCk7XG4gICAgICAgIHRoaXMuYXNzaWduT3B0aW1pemF0aW9uU3RhdGVQYXJhbWV0ZXJzKHtcbiAgICAgICAgICAgIGhlYWRFbWJlZGRpbmcsXG4gICAgICAgICAgICB0YWlsRW1iZWRkaW5nLFxuICAgICAgICAgICAgaGVhZCxcbiAgICAgICAgICAgIHRhaWwsXG4gICAgICAgICAgICBlcG9jaHNQZXJTYW1wbGUsXG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgYixcbiAgICAgICAgICAgIG5FcG9jaHMsXG4gICAgICAgICAgICBuVmVydGljZXMsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJbXByb3ZlIGFuIGVtYmVkZGluZyB1c2luZyBzdG9jaGFzdGljIGdyYWRpZW50IGRlc2NlbnQgdG8gbWluaW1pemUgdGhlXG4gICAgICogZnV6enkgc2V0IGNyb3NzIGVudHJvcHkgYmV0d2VlbiB0aGUgMS1za2VsZXRvbnMgb2YgdGhlIGhpZ2ggZGltZW5zaW9uYWxcbiAgICAgKiBhbmQgbG93IGRpbWVuc2lvbmFsIGZ1enp5IHNpbXBsaWNpYWwgc2V0cy4gSW4gcHJhY3RpY2UgdGhpcyBpcyBkb25lIGJ5XG4gICAgICogc2FtcGxpbmcgZWRnZXMgYmFzZWQgb24gdGhlaXIgbWVtYmVyc2hpcCBzdHJlbmd0aCAod2l0aCB0aGUgKDEtcCkgdGVybXNcbiAgICAgKiBjb21pbmcgZnJvbSBuZWdhdGl2ZSBzYW1wbGluZyBzaW1pbGFyIHRvIHdvcmQydmVjKS5cbiAgICAgKi9cbiAgICBvcHRpbWl6ZUxheW91dFN0ZXAobikge1xuICAgICAgICBjb25zdCB7IG9wdGltaXphdGlvblN0YXRlIH0gPSB0aGlzO1xuICAgICAgICBjb25zdCB7IGhlYWQsIHRhaWwsIGhlYWRFbWJlZGRpbmcsIHRhaWxFbWJlZGRpbmcsIGVwb2Noc1BlclNhbXBsZSwgZXBvY2hPZk5leHRTYW1wbGUsIGVwb2NoT2ZOZXh0TmVnYXRpdmVTYW1wbGUsIGVwb2Noc1Blck5lZ2F0aXZlU2FtcGxlLCBtb3ZlT3RoZXIsIGluaXRpYWxBbHBoYSwgYWxwaGEsIGdhbW1hLCBhLCBiLCBkaW0sIG5FcG9jaHMsIG5WZXJ0aWNlcywgfSA9IG9wdGltaXphdGlvblN0YXRlO1xuICAgICAgICBjb25zdCBjbGlwVmFsdWUgPSA0LjA7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXBvY2hzUGVyU2FtcGxlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZXBvY2hPZk5leHRTYW1wbGVbaV0gPiBuKVxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgY29uc3QgaiA9IGhlYWRbaV07XG4gICAgICAgICAgICBjb25zdCBrID0gdGFpbFtpXTtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSBoZWFkRW1iZWRkaW5nW2pdO1xuICAgICAgICAgICAgY29uc3Qgb3RoZXIgPSB0YWlsRW1iZWRkaW5nW2tdO1xuICAgICAgICAgICAgY29uc3QgZGlzdFNxdWFyZWQgPSByRGlzdChjdXJyZW50LCBvdGhlcik7XG4gICAgICAgICAgICBsZXQgZ3JhZENvZWZmID0gMDtcbiAgICAgICAgICAgIGlmIChkaXN0U3F1YXJlZCA+IDApIHtcbiAgICAgICAgICAgICAgICBncmFkQ29lZmYgPSAtMi4wICogYSAqIGIgKiBNYXRoLnBvdyhkaXN0U3F1YXJlZCwgYiAtIDEuMCk7XG4gICAgICAgICAgICAgICAgZ3JhZENvZWZmIC89IGEgKiBNYXRoLnBvdyhkaXN0U3F1YXJlZCwgYikgKyAxLjA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3IgKGxldCBkID0gMDsgZCA8IGRpbTsgZCsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZ3JhZEQgPSBjbGlwKGdyYWRDb2VmZiAqIChjdXJyZW50W2RdIC0gb3RoZXJbZF0pLCBjbGlwVmFsdWUpO1xuICAgICAgICAgICAgICAgIGN1cnJlbnRbZF0gKz0gZ3JhZEQgKiBhbHBoYTtcbiAgICAgICAgICAgICAgICBpZiAobW92ZU90aGVyKVxuICAgICAgICAgICAgICAgICAgICBvdGhlcltkXSArPSAtZ3JhZEQgKiBhbHBoYTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVwb2NoT2ZOZXh0U2FtcGxlW2ldICs9IGVwb2Noc1BlclNhbXBsZVtpXTtcbiAgICAgICAgICAgIGNvbnN0IG5OZWdTYW1wbGVzID0gTWF0aC5mbG9vcigobiAtIGVwb2NoT2ZOZXh0TmVnYXRpdmVTYW1wbGVbaV0pIC8gZXBvY2hzUGVyTmVnYXRpdmVTYW1wbGVbaV0pO1xuICAgICAgICAgICAgZm9yIChsZXQgcCA9IDA7IHAgPCBuTmVnU2FtcGxlczsgcCsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgayA9IHV0aWxzLnRhdVJhbmRJbnQoblZlcnRpY2VzLCB0aGlzLnJhbmRvbSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3RoZXIgPSB0YWlsRW1iZWRkaW5nW2tdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRpc3RTcXVhcmVkID0gckRpc3QoY3VycmVudCwgb3RoZXIpO1xuICAgICAgICAgICAgICAgIGxldCBncmFkQ29lZmYgPSAwLjA7XG4gICAgICAgICAgICAgICAgaWYgKGRpc3RTcXVhcmVkID4gMC4wKSB7XG4gICAgICAgICAgICAgICAgICAgIGdyYWRDb2VmZiA9IDIuMCAqIGdhbW1hICogYjtcbiAgICAgICAgICAgICAgICAgICAgZ3JhZENvZWZmIC89XG4gICAgICAgICAgICAgICAgICAgICAgICAoMC4wMDEgKyBkaXN0U3F1YXJlZCkgKiAoYSAqIE1hdGgucG93KGRpc3RTcXVhcmVkLCBiKSArIDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmIChqID09PSBrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmb3IgKGxldCBkID0gMDsgZCA8IGRpbTsgZCsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBncmFkRCA9IDQuMDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGdyYWRDb2VmZiA+IDAuMClcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyYWREID0gY2xpcChncmFkQ29lZmYgKiAoY3VycmVudFtkXSAtIG90aGVyW2RdKSwgY2xpcFZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudFtkXSArPSBncmFkRCAqIGFscGhhO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVwb2NoT2ZOZXh0TmVnYXRpdmVTYW1wbGVbaV0gKz0gbk5lZ1NhbXBsZXMgKiBlcG9jaHNQZXJOZWdhdGl2ZVNhbXBsZVtpXTtcbiAgICAgICAgfVxuICAgICAgICBvcHRpbWl6YXRpb25TdGF0ZS5hbHBoYSA9IGluaXRpYWxBbHBoYSAqICgxLjAgLSBuIC8gbkVwb2Nocyk7XG4gICAgICAgIG9wdGltaXphdGlvblN0YXRlLmN1cnJlbnRFcG9jaCArPSAxO1xuICAgICAgICByZXR1cm4gaGVhZEVtYmVkZGluZztcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW1wcm92ZSBhbiBlbWJlZGRpbmcgdXNpbmcgc3RvY2hhc3RpYyBncmFkaWVudCBkZXNjZW50IHRvIG1pbmltaXplIHRoZVxuICAgICAqIGZ1enp5IHNldCBjcm9zcyBlbnRyb3B5IGJldHdlZW4gdGhlIDEtc2tlbGV0b25zIG9mIHRoZSBoaWdoIGRpbWVuc2lvbmFsXG4gICAgICogYW5kIGxvdyBkaW1lbnNpb25hbCBmdXp6eSBzaW1wbGljaWFsIHNldHMuIEluIHByYWN0aWNlIHRoaXMgaXMgZG9uZSBieVxuICAgICAqIHNhbXBsaW5nIGVkZ2VzIGJhc2VkIG9uIHRoZWlyIG1lbWJlcnNoaXAgc3RyZW5ndGggKHdpdGggdGhlICgxLXApIHRlcm1zXG4gICAgICogY29taW5nIGZyb20gbmVnYXRpdmUgc2FtcGxpbmcgc2ltaWxhciB0byB3b3JkMnZlYykuXG4gICAgICovXG4gICAgb3B0aW1pemVMYXlvdXRBc3luYyhlcG9jaENhbGxiYWNrID0gKCkgPT4gdHJ1ZSkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgY29uc3Qgc3RlcCA9IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IG5FcG9jaHMsIGN1cnJlbnRFcG9jaCB9ID0gdGhpcy5vcHRpbWl6YXRpb25TdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbWJlZGRpbmcgPSB0aGlzLm9wdGltaXplTGF5b3V0U3RlcChjdXJyZW50RXBvY2gpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlcG9jaENvbXBsZXRlZCA9IHRoaXMub3B0aW1pemF0aW9uU3RhdGUuY3VycmVudEVwb2NoO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzaG91bGRTdG9wID0gZXBvY2hDYWxsYmFjayhlcG9jaENvbXBsZXRlZCkgPT09IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpc0ZpbmlzaGVkID0gZXBvY2hDb21wbGV0ZWQgPT09IG5FcG9jaHM7XG4gICAgICAgICAgICAgICAgICAgIGlmICghc2hvdWxkU3RvcCAmJiAhaXNGaW5pc2hlZClcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gc3RlcCgpLCAwKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc29sdmUoaXNGaW5pc2hlZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGVycik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gc3RlcCgpLCAwKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEltcHJvdmUgYW4gZW1iZWRkaW5nIHVzaW5nIHN0b2NoYXN0aWMgZ3JhZGllbnQgZGVzY2VudCB0byBtaW5pbWl6ZSB0aGVcbiAgICAgKiBmdXp6eSBzZXQgY3Jvc3MgZW50cm9weSBiZXR3ZWVuIHRoZSAxLXNrZWxldG9ucyBvZiB0aGUgaGlnaCBkaW1lbnNpb25hbFxuICAgICAqIGFuZCBsb3cgZGltZW5zaW9uYWwgZnV6enkgc2ltcGxpY2lhbCBzZXRzLiBJbiBwcmFjdGljZSB0aGlzIGlzIGRvbmUgYnlcbiAgICAgKiBzYW1wbGluZyBlZGdlcyBiYXNlZCBvbiB0aGVpciBtZW1iZXJzaGlwIHN0cmVuZ3RoICh3aXRoIHRoZSAoMS1wKSB0ZXJtc1xuICAgICAqIGNvbWluZyBmcm9tIG5lZ2F0aXZlIHNhbXBsaW5nIHNpbWlsYXIgdG8gd29yZDJ2ZWMpLlxuICAgICAqL1xuICAgIG9wdGltaXplTGF5b3V0KGVwb2NoQ2FsbGJhY2sgPSAoKSA9PiB0cnVlKSB7XG4gICAgICAgIGxldCBpc0ZpbmlzaGVkID0gZmFsc2U7XG4gICAgICAgIGxldCBlbWJlZGRpbmcgPSBbXTtcbiAgICAgICAgd2hpbGUgKCFpc0ZpbmlzaGVkKSB7XG4gICAgICAgICAgICBjb25zdCB7IG5FcG9jaHMsIGN1cnJlbnRFcG9jaCB9ID0gdGhpcy5vcHRpbWl6YXRpb25TdGF0ZTtcbiAgICAgICAgICAgIGVtYmVkZGluZyA9IHRoaXMub3B0aW1pemVMYXlvdXRTdGVwKGN1cnJlbnRFcG9jaCk7XG4gICAgICAgICAgICBjb25zdCBlcG9jaENvbXBsZXRlZCA9IHRoaXMub3B0aW1pemF0aW9uU3RhdGUuY3VycmVudEVwb2NoO1xuICAgICAgICAgICAgY29uc3Qgc2hvdWxkU3RvcCA9IGVwb2NoQ2FsbGJhY2soZXBvY2hDb21wbGV0ZWQpID09PSBmYWxzZTtcbiAgICAgICAgICAgIGlzRmluaXNoZWQgPSBlcG9jaENvbXBsZXRlZCA9PT0gbkVwb2NocyB8fCBzaG91bGRTdG9wO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBlbWJlZGRpbmc7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIG51bWJlciBvZiBlcG9jaHMgZm9yIG9wdGltaXppbmcgdGhlIHByb2plY3Rpb24uXG4gICAgICogTk9URTogVGhpcyBoZXVyaXN0aWMgZGlmZmVycyBmcm9tIHRoZSBweXRob24gdmVyc2lvblxuICAgICAqL1xuICAgIGdldE5FcG9jaHMoKSB7XG4gICAgICAgIGNvbnN0IGdyYXBoID0gdGhpcy5ncmFwaDtcbiAgICAgICAgaWYgKHRoaXMubkVwb2NocyA+IDApXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5uRXBvY2hzO1xuICAgICAgICBpZiAoIWdyYXBoKVxuICAgICAgICAgICAgcmV0dXJuIDIwMDtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gZ3JhcGgublJvd3M7XG4gICAgICAgIGlmIChsZW5ndGggPD0gMjUwMClcbiAgICAgICAgICAgIHJldHVybiA1MDA7XG4gICAgICAgIGVsc2UgaWYgKGxlbmd0aCA8PSA1MDAwKVxuICAgICAgICAgICAgcmV0dXJuIDQwMDtcbiAgICAgICAgZWxzZSBpZiAobGVuZ3RoIDw9IDc1MDApXG4gICAgICAgICAgICByZXR1cm4gMzAwO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gMjAwO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBldWNsaWRlYW4oeCwgeSkge1xuICAgIGxldCByZXN1bHQgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgeC5sZW5ndGg7IGkrKylcbiAgICAgICAgcmVzdWx0ICs9ICh4W2ldIC0geVtpXSkgKiogMjtcbiAgICByZXR1cm4gTWF0aC5zcXJ0KHJlc3VsdCk7XG59XG5leHBvcnQgZnVuY3Rpb24gbnVtZXJpYyh4LCB5KSB7XG4gICAgY29uc3QgcmVzdWx0ID0gTWF0aC5hYnMoeCAtIHkpO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG5leHBvcnQgZnVuY3Rpb24gY29zaW5lKHgsIHkpIHtcbiAgICBsZXQgcmVzdWx0ID0gMC4wO1xuICAgIGxldCBub3JtWCA9IDAuMDtcbiAgICBsZXQgbm9ybVkgPSAwLjA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB4Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHJlc3VsdCArPSB4W2ldICogeVtpXTtcbiAgICAgICAgbm9ybVggKz0geFtpXSAqKiAyO1xuICAgICAgICBub3JtWSArPSB5W2ldICoqIDI7XG4gICAgfVxuICAgIGlmIChub3JtWCA9PT0gMCAmJiBub3JtWSA9PT0gMClcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgZWxzZSBpZiAobm9ybVggPT09IDAgfHwgbm9ybVkgPT09IDApXG4gICAgICAgIHJldHVybiAxLjA7XG4gICAgZWxzZVxuICAgICAgICByZXR1cm4gMS4wIC0gcmVzdWx0IC8gTWF0aC5zcXJ0KG5vcm1YICogbm9ybVkpO1xufVxuLyoqXG4gKiBBbiBpbnRlcmZhY2UgcmVwcmVzZW50aW5nIHRoZSBvcHRpbWl6YXRpb24gc3RhdGUgdHJhY2tlZCBiZXR3ZWVuIHN0ZXBzIG9mXG4gKiB0aGUgU0dEIG9wdGltaXphdGlvblxuICovXG5jbGFzcyBPcHRpbWl6YXRpb25TdGF0ZSB7XG4gICAgY3VycmVudEVwb2NoID0gMDtcbiAgICAvLyBEYXRhIHRyYWNrZWQgZHVyaW5nIG9wdGltaXphdGlvbiBzdGVwcy5cbiAgICBoZWFkRW1iZWRkaW5nID0gW107XG4gICAgdGFpbEVtYmVkZGluZyA9IFtdO1xuICAgIGhlYWQgPSBbXTtcbiAgICB0YWlsID0gW107XG4gICAgZXBvY2hzUGVyU2FtcGxlID0gW107XG4gICAgZXBvY2hPZk5leHRTYW1wbGUgPSBbXTtcbiAgICBlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlID0gW107XG4gICAgZXBvY2hzUGVyTmVnYXRpdmVTYW1wbGUgPSBbXTtcbiAgICBtb3ZlT3RoZXIgPSB0cnVlO1xuICAgIGluaXRpYWxBbHBoYSA9IDEuMDtcbiAgICBhbHBoYSA9IDEuMDtcbiAgICBnYW1tYSA9IDEuMDtcbiAgICBhID0gMS41NzY5NDM0NjAzMTEzMDc3O1xuICAgIGIgPSAwLjg5NTA2MDg3NzkxMDk3MzM7XG4gICAgZGltID0gMjtcbiAgICBuRXBvY2hzID0gNTAwO1xuICAgIG5WZXJ0aWNlcyA9IDA7XG59XG4vKipcbiAqIFN0YW5kYXJkIGNsYW1waW5nIG9mIGEgdmFsdWUgaW50byBhIGZpeGVkIHJhbmdlXG4gKi9cbmZ1bmN0aW9uIGNsaXAoeCwgY2xpcFZhbHVlKSB7XG4gICAgaWYgKHggPiBjbGlwVmFsdWUpXG4gICAgICAgIHJldHVybiBjbGlwVmFsdWU7XG4gICAgZWxzZSBpZiAoeCA8IC1jbGlwVmFsdWUpXG4gICAgICAgIHJldHVybiAtY2xpcFZhbHVlO1xuICAgIGVsc2VcbiAgICAgICAgcmV0dXJuIHg7XG59XG4vKipcbiAqIFJlZHVjZWQgRXVjbGlkZWFuIGRpc3RhbmNlLlxuICovXG5mdW5jdGlvbiByRGlzdCh4LCB5KSB7XG4gICAgbGV0IHJlc3VsdCA9IDAuMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHgubGVuZ3RoOyBpKyspXG4gICAgICAgIHJlc3VsdCArPSBNYXRoLnBvdyh4W2ldIC0geVtpXSwgMik7XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbi8qKlxuICogRml0IGEsIGIgcGFyYW1zIGZvciB0aGUgZGlmZmVyZW50aWFibGUgY3VydmUgdXNlZCBpbiBsb3dlclxuICogZGltZW5zaW9uYWwgZnV6enkgc2ltcGxpY2lhbCBjb21wbGV4IGNvbnN0cnVjdGlvbi4gV2Ugd2FudCB0aGVcbiAqIHNtb290aCBjdXJ2ZSAoZnJvbSBhIHByZS1kZWZpbmVkIGZhbWlseSB3aXRoIHNpbXBsZSBncmFkaWVudCkgdGhhdFxuICogYmVzdCBtYXRjaGVzIGFuIG9mZnNldCBleHBvbmVudGlhbCBkZWNheS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpbmRBQlBhcmFtcyhzcHJlYWQsIG1pbkRpc3QpIHtcbiAgICBjb25zdCBjdXJ2ZSA9IChbYSwgYl0pID0+ICh4KSA9PiB7XG4gICAgICAgIHJldHVybiAxLjAgLyAoMS4wICsgYSAqIHggKiogKDIgKiBiKSk7XG4gICAgfTtcbiAgICBjb25zdCB4diA9IHV0aWxzXG4gICAgICAgIC5saW5lYXIoMCwgc3ByZWFkICogMywgMzAwKVxuICAgICAgICAubWFwKCh2YWwpID0+ICh2YWwgPCBtaW5EaXN0ID8gMS4wIDogdmFsKSk7XG4gICAgY29uc3QgeXYgPSB1dGlscy56ZXJvcyh4di5sZW5ndGgpLm1hcCgodmFsLCBpbmRleCkgPT4ge1xuICAgICAgICBjb25zdCBndGUgPSB4dltpbmRleF0gPj0gbWluRGlzdDtcbiAgICAgICAgcmV0dXJuIGd0ZSA/IE1hdGguZXhwKC0oeHZbaW5kZXhdIC0gbWluRGlzdCkgLyBzcHJlYWQpIDogdmFsO1xuICAgIH0pO1xuICAgIGNvbnN0IGluaXRpYWxWYWx1ZXMgPSBbMC41LCAwLjVdO1xuICAgIGNvbnN0IGRhdGEgPSB7IHg6IHh2LCB5OiB5diB9O1xuICAgIC8vIERlZmF1bHQgb3B0aW9ucyBmb3IgdGhlIGFsZ29yaXRobSAoZnJvbSBnaXRodWIgZXhhbXBsZSlcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgICBkYW1waW5nOiAxLjUsXG4gICAgICAgIGluaXRpYWxWYWx1ZXMsXG4gICAgICAgIGdyYWRpZW50RGlmZmVyZW5jZTogMTBlLTIsXG4gICAgICAgIG1heEl0ZXJhdGlvbnM6IDEwMCxcbiAgICAgICAgZXJyb3JUb2xlcmFuY2U6IDEwZS0zLFxuICAgIH07XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5ldy1jYXBcbiAgICBjb25zdCB7IHBhcmFtZXRlclZhbHVlcyB9ID0gTE0oZGF0YSwgY3VydmUsIG9wdGlvbnMpO1xuICAgIGNvbnN0IFthLCBiXSA9IHBhcmFtZXRlclZhbHVlcztcbiAgICByZXR1cm4geyBhLCBiIH07XG59XG4vKipcbiAqIFVuZGVyIHRoZSBhc3N1bXB0aW9uIG9mIGNhdGVnb3JpY2FsIGRpc3RhbmNlIGZvciB0aGUgaW50ZXJzZWN0aW5nXG4gKiBzaW1wbGljaWFsIHNldCBwZXJmb3JtIGEgZmFzdCBpbnRlcnNlY3Rpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmYXN0SW50ZXJzZWN0aW9uKGdyYXBoLCB0YXJnZXQsIHVua25vd25EaXN0ID0gMS4wLCBmYXJEaXN0ID0gNS4wKSB7XG4gICAgcmV0dXJuIGdyYXBoLm1hcCgodmFsdWUsIHJvdywgY29sKSA9PiB7XG4gICAgICAgIGlmICh0YXJnZXRbcm93XSA9PT0gLTEgfHwgdGFyZ2V0W2NvbF0gPT09IC0xKVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlICogTWF0aC5leHAoLXVua25vd25EaXN0KTtcbiAgICAgICAgZWxzZSBpZiAodGFyZ2V0W3Jvd10gIT09IHRhcmdldFtjb2xdKVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlICogTWF0aC5leHAoLWZhckRpc3QpO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfSk7XG59XG4vKipcbiAqIFJlc2V0IHRoZSBsb2NhbCBjb25uZWN0aXZpdHkgcmVxdWlyZW1lbnQgLS0gZWFjaCBkYXRhIHNhbXBsZSBzaG91bGRcbiAqIGhhdmUgY29tcGxldGUgY29uZmlkZW5jZSBpbiBhdCBsZWFzdCBvbmUgMS1zaW1wbGV4IGluIHRoZSBzaW1wbGljaWFsIHNldC5cbiAqIFdlIGNhbiBlbmZvcmNlIHRoaXMgYnkgbG9jYWxseSByZXNjYWxpbmcgY29uZmlkZW5jZXMsIGFuZCB0aGVuIHJlbWVyZ2luZyB0aGVcbiAqIGRpZmZlcmVudCBsb2NhbCBzaW1wbGljaWFsIHNldHMgdG9nZXRoZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNldExvY2FsQ29ubmVjdGl2aXR5KHNpbXBsaWNpYWxTZXQpIHtcbiAgICBzaW1wbGljaWFsU2V0ID0gbWF0cml4Lm5vcm1hbGl6ZShzaW1wbGljaWFsU2V0LCBcIm1heFwiIC8qIG1hdHJpeC5Ob3JtVHlwZS5tYXggKi8pO1xuICAgIGNvbnN0IHRyYW5zcG9zZSA9IG1hdHJpeC50cmFuc3Bvc2Uoc2ltcGxpY2lhbFNldCk7XG4gICAgY29uc3QgcHJvZE1hdHJpeCA9IG1hdHJpeC5wYWlyd2lzZU11bHRpcGx5KHRyYW5zcG9zZSwgc2ltcGxpY2lhbFNldCk7XG4gICAgc2ltcGxpY2lhbFNldCA9IG1hdHJpeC5hZGQoc2ltcGxpY2lhbFNldCwgbWF0cml4LnN1YnRyYWN0KHRyYW5zcG9zZSwgcHJvZE1hdHJpeCkpO1xuICAgIHJldHVybiBtYXRyaXguZWxpbWluYXRlWmVyb3Moc2ltcGxpY2lhbFNldCk7XG59XG4vKipcbiAqIEdpdmVuIGluZGljZXMgYW5kIHdlaWdodHMgYW5kIGFuIG9yaWdpbmFsIGVtYmVkZGluZ3NcbiAqIGluaXRpYWxpemUgdGhlIHBvc2l0aW9ucyBvZiBuZXcgcG9pbnRzIHJlbGF0aXZlIHRvIHRoZVxuICogaW5kaWNlcyBhbmQgd2VpZ2h0cyAob2YgdGhlaXIgbmVpZ2hib3JzIGluIHRoZSBzb3VyY2UgZGF0YSkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbml0VHJhbnNmb3JtKGluZGljZXMsIHdlaWdodHMsIGVtYmVkZGluZykge1xuICAgIGNvbnN0IHJlc3VsdCA9IHV0aWxzXG4gICAgICAgIC56ZXJvcyhpbmRpY2VzLmxlbmd0aClcbiAgICAgICAgLm1hcCgoX3opID0+IHV0aWxzLnplcm9zKGVtYmVkZGluZ1swXS5sZW5ndGgpKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGluZGljZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBpbmRpY2VzWzBdLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBkID0gMDsgZCA8IGVtYmVkZGluZ1swXS5sZW5ndGg7IGQrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGEgPSBpbmRpY2VzW2ldW2pdO1xuICAgICAgICAgICAgICAgIHJlc3VsdFtpXVtkXSArPSB3ZWlnaHRzW2ldW2pdICogZW1iZWRkaW5nW2FdW2RdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkVzFoY0M1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJblZ0WVhBdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUVzTkVKQlFUUkNPMEZCUXpWQ096czdPenM3T3pzN096czdPenM3T3p0SFFXbENSenRCUVVWSU96czdPenRIUVV0SE8wRkJSVWc3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN1IwRXJRa2M3UVVGRlNDeFBRVUZQTEV0QlFVc3NTVUZCU1N4TlFVRk5MRkZCUVZFc1EwRkJRenRCUVVNdlFpeFBRVUZQTEV0QlFVc3NUVUZCVFN4TlFVRk5MRlZCUVZVc1EwRkJRenRCUVVOdVF5eFBRVUZQTEV0QlFVc3NVMEZCVXl4TlFVRk5MR05CUVdNc1EwRkJRenRCUVVNeFF5eFBRVUZQTEV0QlFVc3NTVUZCU1N4TlFVRk5MRkZCUVZFc1EwRkJRenRCUVVNdlFpeFBRVUZQTEV0QlFVc3NTMEZCU3l4TlFVRk5MRk5CUVZNc1EwRkJRenRCUVVOcVF5eFBRVUZQTEVWQlFVVXNUVUZCVFN4M1FrRkJkMElzUTBGQlF6dEJRV0Y0UXl4TlFVRk5MR3RDUVVGclFpeEhRVUZITEVsQlFVa3NRMEZCUXp0QlFVTm9ReXhOUVVGTkxHZENRVUZuUWl4SFFVRkhMRWxCUVVrc1EwRkJRenRCUVcxSU9VSTdPenM3T3pzN096czdPenM3T3pzN096czdSMEZ0UWtjN1FVRkRTQ3hOUVVGTkxFOUJRVThzU1VGQlNUdEpRVU5RTEZsQlFWa3NSMEZCUnl4SFFVRkhMRU5CUVVNN1NVRkRia0lzYVVKQlFXbENMRWRCUVVjc1IwRkJSeXhEUVVGRE8wbEJRM2hDTEU5QlFVOHNSMEZCUnl4SFFVRkhMRU5CUVVNN1NVRkRaQ3hYUVVGWExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlEyaENMRTlCUVU4c1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRFdpeFZRVUZWTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJoQ0xHdENRVUZyUWl4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVOMlFpeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVOeVFpeHBRa0ZCYVVJc1IwRkJSeXhIUVVGSExFTkJRVU03U1VGRGVFSXNZVUZCWVN4SFFVRkhMRWRCUVVjc1EwRkJRenRKUVVOd1FpeE5RVUZOTEVkQlFVY3NSMEZCUnl4RFFVRkRPMGxCUTJJc2EwSkJRV3RDTEVkQlFVY3NSMEZCUnl4RFFVRkRPMGxCUldwRExDdENRVUVyUWp0SlFVTjJRaXhaUVVGWkxHZEVRVUUwUWp0SlFVTjRReXhaUVVGWkxFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlEyNUNMR2RDUVVGblFpeEhRVUZITEVWQlFVVXNRMEZCUXp0SlFVVjBRaXhWUVVGVkxFZEJRV1VzVDBGQlR5eERRVUZETzBsQlJYcERMR2RGUVVGblJUdEpRVU40UkN4VlFVRlZMRU5CUVdNN1NVRkRlRUlzV1VGQldTeERRVUZqTzBsQlJXeERMRFpEUVVFMlF6dEpRVU55UXl4TFFVRkxMRU5CUVhWQ08wbEJRelZDTEVOQlFVTXNRMEZCVlR0SlFVTllMR0ZCUVdFc1IwRkJSeXhMUVVGTExFTkJRVU03U1VGRGRFSXNVVUZCVVN4SFFVRnZRaXhGUVVGRkxFTkJRVU03U1VGREwwSXNZMEZCWXl4RFFVRTRRanRKUVVNMVF5eFpRVUZaTEVOQlFUUkNPMGxCUTNoRExFMUJRVTBzUTBGQmMwSTdTVUZETlVJc1YwRkJWeXhEUVVGMVFqdEpRVVV4UXl4NVEwRkJlVU03U1VGRGFrTXNRMEZCUXl4RFFVRlpPMGxCUlhKQ0xITkNRVUZ6UWp0SlFVTmtMRk5CUVZNc1IwRkJaU3hGUVVGRkxFTkJRVU03U1VGRE0wSXNhVUpCUVdsQ0xFZEJRVWNzU1VGQlNTeHBRa0ZCYVVJc1JVRkJSU3hEUVVGRE8wbEJSM0JFTEVsQlFVa3NVMEZCVXp0UlFVTllMRTlCUVU4c1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGQlF6dEpRVU42UWl4RFFVRkRPMGxCUTBRc1dVRkJXU3hUUVVGNVFpeEZRVUZGTzFGQlEzSkRMRTFCUVUwc1VVRkJVU3hIUVVGSExFTkJRVU1zUjBGQmVVSXNSVUZCUlN4RlFVRkZPMWxCUXpkRExGbEJRVms3V1VGRFdpeEpRVUZKTEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc1MwRkJTeXhUUVVGVE8yZENRVUZGTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEZWtRc1EwRkJReXhEUVVGRE8xRkJSVVlzVVVGQlVTeERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPMUZCUTNaQ0xGRkJRVkVzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZCUXp0UlFVTjZRaXhSUVVGUkxFTkJRVU1zYlVKQlFXMUNMRU5CUVVNc1EwRkJRenRSUVVNNVFpeFJRVUZSTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNN1VVRkRjRUlzVVVGQlVTeERRVUZETEdGQlFXRXNRMEZCUXl4RFFVRkRPMUZCUTNoQ0xGRkJRVkVzUTBGQlF5eFRRVUZUTEVOQlFVTXNRMEZCUXp0UlFVTndRaXhSUVVGUkxFTkJRVU1zV1VGQldTeERRVUZETEVOQlFVTTdVVUZEZGtJc1VVRkJVU3hEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRU5CUVVNN1VVRkRMMElzVVVGQlVTeERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPMUZCUTI1Q0xGRkJRVkVzUTBGQlF5eHRRa0ZCYlVJc1EwRkJReXhEUVVGRE8xRkJRemxDTEZGQlFWRXNRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJRenRSUVVNeFFpeFJRVUZSTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNN1VVRkRia0lzVVVGQlVTeERRVUZETEc5Q1FVRnZRaXhEUVVGRExFTkJRVU03VVVGREwwSXNTVUZCU1N4RFFVRkRMR2RDUVVGblFpeEhRVUZITEUxQlFVMHNRMEZCUXl4VlFVRlZMRWxCUVVrc1NVRkJTU3hEUVVGRExGVkJRVlVzU1VGQlNTeEpRVUZKTEVOQlFVTXNaMEpCUVdkQ0xFTkJRVU03U1VGRGVFWXNRMEZCUXp0SlFVVkVPenRQUVVWSE8wbEJRMGdzUjBGQlJ5eERRVUZETEVOQlFWTTdVVUZEV0N4SlFVRkpMRU5CUVVNc1lVRkJZU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEzUkNMRWxCUVVrc1EwRkJReXhqUVVGakxFVkJRVVVzUTBGQlF6dFJRVVYwUWl4UFFVRlBMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU03U1VGRGVFSXNRMEZCUXp0SlFVVkVPenM3VDBGSFJ6dEpRVU5JTEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUTFvc1EwRkJVeXhGUVVOVUxGZEJRVzlFTEVkQlFVY3NSVUZCUlN4RFFVRkRMRWxCUVVrN1VVRkZPVVFzU1VGQlNTeERRVUZETEdGQlFXRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVWMFFpeE5RVUZOTEVsQlFVa3NRMEZCUXl4dFFrRkJiVUlzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXp0UlFVTjZReXhQUVVGUExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTTdTVUZEZUVJc1EwRkJRenRKUVVWRU96dFBRVVZITzBsQlEwZ3NkVUpCUVhWQ0xFTkJRVU1zUTBGQlZ5eEZRVUZGTEZOQlFTdENMRVZCUVVVN1VVRkRjRVVzU1VGQlNTeERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRXQ3hKUVVGSkxFTkJRVU1zV1VGQldTeEhRVUZITEUxQlFVMHNRMEZCUXl4WlFVRlpMRWxCUVVrc1NVRkJTU3hEUVVGRExGbEJRVmtzUTBGQlF6dFJRVU0zUkN4SlFVRkpMRU5CUVVNc1dVRkJXU3hIUVVGSExFMUJRVTBzUTBGQlF5eFpRVUZaTEVsQlFVa3NTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJRenRSUVVNM1JDeEpRVUZKTEVOQlFVTXNaMEpCUVdkQ0xFZEJRVWNzVFVGQlRTeERRVUZETEdkQ1FVRm5RaXhKUVVGSkxFbEJRVWtzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJRenRKUVVNelJTeERRVUZETzBsQlJVUTdPMDlCUlVjN1NVRkRTQ3hwUWtGQmFVSXNRMEZCUXl4VlFVRnpRaXhGUVVGRkxGbEJRWGRDTzFGQlEyaEZMRWxCUVVrc1EwRkJReXhWUVVGVkxFZEJRVWNzVlVGQlZTeERRVUZETzFGQlF6ZENMRWxCUVVrc1EwRkJReXhaUVVGWkxFZEJRVWNzV1VGQldTeERRVUZETzBsQlEyNURMRU5CUVVNN1NVRkZSRHM3T3pzN1QwRkxSenRKUVVOSUxHRkJRV0VzUTBGQlF5eERRVUZUTzFGQlEzSkNMRWxCUVVrc1EwRkJReXhEUVVGRExFMUJRVTBzU1VGQlNTeEpRVUZKTEVOQlFVTXNWVUZCVlR0WlFVTTNRaXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETERKQ1FVRXlRaXhEUVVGRExFTkJRVU1zVFVGQlRTd3lRa0ZCTWtJc1NVRkJTU3hEUVVGRExGVkJRVlVzYzBSQlFYTkVMRU5CUVVNc1EwRkJRenRSUVVkMlNpdzBSVUZCTkVVN1VVRkROVVVzU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hKUVVGSkxFTkJRVU1zWVVGQllUdFpRVU53UXl4UFFVRlBMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF6dFJRVWN6UWl4SlFVRkpMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVVZZTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEZsQlFWa3NSVUZCUlR0WlFVTXhReXhOUVVGTkxGVkJRVlVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNaMEpCUVdkQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZETlVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUjBGQlJ5eFZRVUZWTEVOQlFVTXNWVUZCVlN4RFFVRkRPMWxCUTNoRExFbEJRVWtzUTBGQlF5eFpRVUZaTEVkQlFVY3NWVUZCVlN4RFFVRkRMRmxCUVZrc1EwRkJRenRUUVVNM1F6dFJRVVZFTEVsQlFVa3NRMEZCUXl4TFFVRkxMRWRCUVVjc1NVRkJTU3hEUVVGRExHdENRVUZyUWl4RFFVTnNReXhEUVVGRExFVkJRMFFzU1VGQlNTeERRVUZETEZWQlFWVXNSVUZEWml4SlFVRkpMRU5CUVVNc1lVRkJZU3hEUVVOdVFpeERRVUZETzFGQlJVWXNlVVJCUVhsRU8xRkJRM3BFTEVsQlFVa3NRMEZCUXl4aFFVRmhMRVZCUVVVc1EwRkJRenRSUVVOeVFpeEpRVUZKTEVOQlFVTXNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZGTTBNc2VVUkJRWGxFTzFGQlEzcEVMRWxCUVVrc1EwRkJReXh0UTBGQmJVTXNSVUZCUlN4RFFVRkRPMUZCUlRORExFMUJRVTBzUlVGRFNpeEpRVUZKTEVWQlEwb3NTVUZCU1N4RlFVTktMR1ZCUVdVc1IwRkRhRUlzUjBGQlJ5eEpRVUZKTEVOQlFVTXNaME5CUVdkRExFVkJRVVVzUTBGQlF6dFJRVVUxUXl4eFEwRkJjVU03VVVGRGNrTXNTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeERRVUZETEVsQlFVa3NSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkRia01zU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhEUVVGRExFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZEYmtNc1NVRkJTU3hEUVVGRExHbENRVUZwUWl4RFFVRkRMR1ZCUVdVc1IwRkJSeXhsUVVGbExFTkJRVU03VVVGRmVrUXNlVU5CUVhsRE8xRkJRM3BETEVsQlFVa3NRMEZCUXl4elFrRkJjMElzUlVGQlJTeERRVUZETzFGQlF6bENMRWxCUVVrc1EwRkJReXd3UWtGQk1FSXNSVUZCUlN4RFFVRkRPMUZCUTJ4RExFbEJRVWtzUTBGQlF5eGhRVUZoTEVkQlFVY3NTVUZCU1N4RFFVRkRPMUZCUlRGQ0xFOUJRVThzU1VGQlNTeERRVUZETEZWQlFWVXNSVUZCUlN4RFFVRkRPMGxCUXpOQ0xFTkJRVU03U1VGRlR5eGhRVUZoTzFGQlEyNUNMRTFCUVUwc1JVRkJReXhaUVVGWkxFVkJRVVVzWTBGQll5eEZRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRzFDUVVGdFFpeERRVU5zUlN4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVOb1FpeERRVUZETzFGQlEwWXNTVUZCU1N4RFFVRkRMRmxCUVZrc1IwRkJSeXhaUVVGWkxFTkJRVU03VVVGRGFrTXNTVUZCU1N4RFFVRkRMR05CUVdNc1IwRkJSeXhqUVVGakxFTkJRVU03VVVGRGNrTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1IwRkJSeXhUUVVGVExFTkJRVU1zZFVKQlFYVkNMRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETzBsQlEyNUZMRU5CUVVNN1NVRkZUeXhsUVVGbExFTkJRVU1zUTBGQlV6dFJRVU12UWl4TlFVRk5MRlZCUVZVc1IwRkJSeXhKUVVGSkxFTkJRVU1zVlVGQlZ5eERRVUZETzFGQlEzQkRMRTFCUVUwc1dVRkJXU3hIUVVGSExFbEJRVWtzUTBGQlF5eFpRVUZoTEVOQlFVTTdVVUZEZUVNc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVU5zUXl4TlFVRk5MRmRCUVZjc1IwRkJSeXhKUVVGSkxFMUJRVTBzUTBGQlF5eFpRVUZaTEVOQlFVTXNSVUZCUlN4RlFVRkZMRVZCUVVVc1JVRkJSU3hGUVVGRkxFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdVVUZET1VRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRlZCUVZVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZETVVNc1RVRkJUU3hIUVVGSExFZEJRVWNzVlVGQlZTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpGQ0xFMUJRVTBzVTBGQlV5eEhRVUZITEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOc1F5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRuUWtGRGJrTXNUVUZCVFN4UlFVRlJMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTjRRaXhOUVVGTkxGRkJRVkVzUjBGQlJ5eFRRVUZUTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1owSkJRemxDTEVsQlFVa3NVVUZCVVN4SFFVRkhMRU5CUVVNN2IwSkJRMlFzVjBGQlZ5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRVZCUVVVc1VVRkJVU3hGUVVGRkxGRkJRVkVzUTBGQlF5eERRVUZETzJGQlF6RkRPMU5CUTBZN1VVRkZSQ3hOUVVGTkxGTkJRVk1zUjBGQlJ5eE5RVUZOTEVOQlFVTXNVMEZCVXl4RFFVRkRMRmRCUVZjc1EwRkJReXhEUVVGRE8xRkJRMmhFTEU5QlFVOHNUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhYUVVGWExFVkJRVVVzVTBGQlV5eERRVUZETEVOQlFVTTdTVUZEYUVRc1EwRkJRenRKUVVWRU96dFBRVVZITzBsQlEwZ3NVMEZCVXl4RFFVRkRMRmRCUVcxQ08xRkJRek5DTERKQ1FVRXlRanRSUVVNelFpeE5RVUZOTEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRM1pDTEVsQlFVa3NUMEZCVHl4TFFVRkxMRk5CUVZNc1NVRkJTU3hQUVVGUExFTkJRVU1zVFVGQlRTeExRVUZMTEVOQlFVTTdXVUZETDBNc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5eDFRa0ZCZFVJc1EwRkJReXhEUVVGRE8xRkJSek5ETEVsQlFVa3NWVUZCVlN4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEZWQlFWVXNSMEZCUnl4SlFVRkpMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNRMEZCUXp0UlFVTjJSU3hWUVVGVkxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4UFFVRlBMRU5CUVVNc1RVRkJUU3hGUVVGRkxGVkJRVlVzUTBGQlF5eERRVUZETzFGQlEyeEVMRTFCUVUwc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eG5Ra0ZCWjBJc1EwRkRja01zU1VGQlNTeERRVUZETEZGQlFWRXNSVUZEWWl4UFFVRlBMRVZCUTFBc1YwRkJWeXhGUVVOWUxGVkJRVlVzUlVGRFZpeEpRVUZKTEVOQlFVTXNZMEZCWXl4RlFVTnVRaXhKUVVGSkxFTkJRVU1zV1VGQldTeEZRVU5xUWl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVOYUxFTkJRVU03VVVGRlJpeE5RVUZOTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFOUJRVThzUlVGQlJTeEpRVUZKTEVOQlFVTXNWMEZCVnl4RlFVRkZMRWxCUVVrc1JVRkJSU3hYUVVGWExFTkJRVU1zUTBGQlF6dFJRVVY2UlN4SlFVRkpMRVZCUVVNc1QwRkJUeXhGUVVGRkxFOUJRVThzUlVGQlJTeFRRVUZUTEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzFGQlJUVkVMRTlCUVU4c1IwRkJSeXhQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU14UkN4VFFVRlRMRWRCUVVjc1UwRkJVeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRk9VUXNUVUZCVFN4NVFrRkJlVUlzUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zYVVKQlFXbENMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRE1VVXNUVUZCVFN4RlFVRkRMRTFCUVUwc1JVRkJSU3hKUVVGSkxFVkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNhVUpCUVdsQ0xFTkJRek5ETEZOQlFWTXNSVUZEVkN4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVObUxIbENRVUY1UWl4RFFVTXhRaXhEUVVGRE8xRkJSVVlzVFVGQlRTeEZRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1NVRkJTU3hGUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETERCQ1FVRXdRaXhEUVVONFJDeFBRVUZQTEVWQlExQXNVMEZCVXl4RlFVTlVMRTFCUVUwc1JVRkRUaXhKUVVGSkxFTkJRMHdzUTBGQlF6dFJRVVZHTEUxQlFVMHNTVUZCU1N4SFFVRkhMRU5CUVVNc1YwRkJWeXhEUVVGRExFMUJRVTBzUlVGQlJTeFBRVUZQTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1VVRkRiRVFzU1VGQlNTeExRVUZMTEVkQlFVY3NTVUZCU1N4TlFVRk5MRU5CUVVNc1dVRkJXU3hEUVVGRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVXNTVUZCU1N4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8xRkJSVFZFTEc5RlFVRnZSVHRSUVVOd1JTeHpSVUZCYzBVN1VVRkRkRVVzSzBSQlFTdEVPMUZCUlM5RUxFMUJRVTBzVFVGQlRTeEhRVUZITEUxQlFVMHNRMEZCUXl4VFFVRlRMRU5CUVVNc1MwRkJTeXhuUTBGQmNVSXNRMEZCUXp0UlFVVXpSQ3hOUVVGTkxGTkJRVk1zUjBGQlJ5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xRkJRM2hETEUxQlFVMHNUMEZCVHl4SFFVRkhMRmRCUVZjc1EwRkJReXhOUVVGTkxFTkJRVU03VVVGRmJrTXNUVUZCVFN4UlFVRlJMRWRCUVVjc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGRE9VSXNVMEZCVXl4RFFVRkRMRTlCUVU4c1JVRkRha0lzVDBGQlR5eEZRVU5RTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUTJoQ0xFTkJRVU03VVVGRlJpeE5RVUZOTEZGQlFWRXNSMEZCUnl4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVNNVFpeFRRVUZUTEVOQlFVTXNUVUZCVFN4RlFVTm9RaXhQUVVGUExFVkJRMUFzU1VGQlNTeERRVUZETEZWQlFWVXNRMEZEYUVJc1EwRkJRenRSUVVWR0xFMUJRVTBzVTBGQlV5eEhRVUZITEdGQlFXRXNRMEZCUXl4UlFVRlJMRVZCUVVVc1VVRkJVU3hGUVVGRkxFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNRMEZCUXp0UlFVVndSU3hOUVVGTkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1dVRkROVUlzU1VGQlNTeERRVUZETEU5QlFVOHNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOc1FpeExRVUZMTEVOQlFVTXNTMEZCU3l4SlFVRkpMRXRCUVVzc1EwRkJReXhEUVVGRE8yZENRVU53UWl4SFFVRkhMRU5CUVVNc1EwRkJRenRuUWtGRFRDeEZRVUZGTEVOQlFVTTdVVUZGVUN4TlFVRk5MRkZCUVZFc1IwRkJSeXhMUVVGTE8yRkJRMjVDTEZOQlFWTXNSVUZCUlR0aFFVTllMRTFCUVUwc1EwRkJReXhEUVVGRExFZEJRVWNzUlVGQlJTeEhRVUZITEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1IwRkJSeXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTndSQ3hMUVVGTExFZEJRVWNzUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eExRVUZMTEVkQlFVY3NVVUZCVVN4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRM1pGTEV0QlFVc3NSMEZCUnl4TlFVRk5MRU5CUVVNc1kwRkJZeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFGQlJYSkRMRTFCUVUwc1pVRkJaU3hIUVVGSExFbEJRVWtzUTBGQlF5eHRRa0ZCYlVJc1EwRkRPVU1zUzBGQlN5eERRVUZETEZOQlFWTXNSVUZCUlN4RlFVTnFRaXhQUVVGUExFTkJRMUlzUTBGQlF6dFJRVU5HTEUxQlFVMHNTVUZCU1N4SFFVRkhMRXRCUVVzc1EwRkJReXhQUVVGUExFVkJRVVVzUTBGQlF6dFJRVU0zUWl4TlFVRk5MRWxCUVVrc1IwRkJSeXhMUVVGTExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTTdVVUZGTjBJc2IwVkJRVzlGTzFGQlEzQkZMRWxCUVVrc1EwRkJReXhwUTBGQmFVTXNRMEZCUXp0WlFVTnlReXhoUVVGaExFVkJRVVVzVTBGQlV6dFpRVU40UWl4aFFVRmhMRVZCUVVVc1NVRkJTU3hEUVVGRExGTkJRVk03V1VGRE4wSXNTVUZCU1R0WlFVTktMRWxCUVVrN1dVRkRTaXhaUVVGWkxFVkJRVVVzUTBGQlF6dFpRVU5tTEU5QlFVODdXVUZEVUN4VFFVRlRMRVZCUVVVc1MwRkJTeXhEUVVGRExFOUJRVThzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTTNRaXhsUVVGbE8xTkJRMmhDTEVOQlFVTXNRMEZCUXp0UlFVTklMRWxCUVVrc1EwRkJReXd3UWtGQk1FSXNSVUZCUlN4RFFVRkRPMUZCUld4RExFOUJRVThzU1VGQlNTeERRVUZETEdOQlFXTXNSVUZCUlN4RFFVRkRPMGxCUXk5Q0xFTkJRVU03U1VGRlJEczdPMDlCUjBjN1NVRkRTeXh0UTBGQmJVTTdVVUZEZWtNc1RVRkJUU3hGUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkRjRUlzU1VGQlNTeERRVUZETEVWQlFVVTdXVUZEVEN4SlFVRkpMRU5CUVVNc1EwRkJReXhOUVVGTkxFdEJRVXNzUTBGQlF5eERRVUZETEUxQlFVMDdaMEpCUTNaQ0xFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNhVU5CUVdsRExFTkJRVU1zUTBGQlF6dFpRVWR5UkN4SlFVRkpMRWxCUVVrc1EwRkJReXhaUVVGWkxHbEVRVUUyUWl4RlFVRkZPMmRDUVVOc1JDeE5RVUZOTEVWQlFVVXNSMEZCUnl4SlFVRkpMRU5CUVVNc1dVRkJXU3hIUVVGSExFZEJRVWNzUTBGQlF6dG5Ra0ZEYmtNc1RVRkJUU3hQUVVGUExFZEJRVWNzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXp0blFrRkRkRVVzU1VGQlNTeERRVUZETEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc2IwTkJRVzlETEVOQlEzQkVMRWxCUVVrc1EwRkJReXhMUVVGTExFVkJRMVlzUTBGQlF5eEZRVU5FTEU5QlFVOHNRMEZEVWl4RFFVRkRPMkZCUTBnN1dVRkRSQ3hwUlVGQmFVVTdVMEZEYkVVN1NVRkRTQ3hEUVVGRE8wbEJSVVE3TzA5QlJVYzdTVUZEU0N4SlFVRkpPMUZCUTBZc1RVRkJUU3hGUVVGRExGbEJRVmtzUlVGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4cFFrRkJhVUlzUTBGQlF6dFJRVVU1UXl4SlFVRkpMRmxCUVZrc1IwRkJSeXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTzFsQlEyeERMRWxCUVVrc1EwRkJReXhyUWtGQmEwSXNRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRSUVVWNFF5eFBRVUZQTEVsQlFVa3NRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eFpRVUZaTEVOQlFVTTdTVUZETjBNc1EwRkJRenRKUVVWRU96dFBRVVZITzBsQlEwZ3NXVUZCV1R0UlFVTldMRTlCUVU4c1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF6dEpRVU40UWl4RFFVRkRPMGxCUlVRN096czdUMEZKUnp0SlFVTkxMR2RDUVVGblFpeERRVUZETEVOQlFWTTdVVUZEYUVNc1RVRkJUU3hGUVVGRExGVkJRVlVzUlVGQlJTeFZRVUZWTEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkRkRU1zVFVGQlRTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRlRMRVZCUVVVc1JVRkJSU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTjBSQ3hOUVVGTkxHVkJRV1VzUjBGQlJ5eFRRVUZUTEVOQlFVTXNZVUZCWVN4RFFVRkRMRlZCUVZVc1JVRkJSU3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdVVUZGZWtVc2JVUkJRVzFFTzFGQlEyNUVMRTFCUVUwc1MwRkJTeXhIUVVGSExFTkJRVU1zUTBGQlV5eEZRVUZGTEVWQlFVVTdXVUZETVVJc1QwRkJUeXhEUVVGRExFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRka01zUTBGQlF5eERRVUZETzFGQlJVWXNUVUZCVFN4TlFVRk5MRWRCUVVjc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkROMFFzVFVGQlRTeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRmJrVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1IwRkJSeXhKUVVGSkxFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTXNSVUZCUlN4VlFVRlZMRVZCUVVVc1RVRkJUU3hGUVVGRkxFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0UlFVVndSU3hOUVVGTkxGTkJRVk1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNZVUZCWVN4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dFJRVU53UkN4TlFVRk5MRVZCUVVNc1QwRkJUeXhGUVVGRkxFOUJRVThzUlVGQlF5eEhRVUZITEdWQlFXVXNRMEZEZUVNc1EwRkJReXhGUVVORUxGTkJRVk1zUlVGRFZDeFZRVUZWTEVWQlExWXNUVUZCVFN4RFFVTlFMRU5CUVVNN1VVRkRSaXhQUVVGUExFVkJRVU1zVlVGQlZTeEZRVUZGTEU5QlFVOHNSVUZCUlN4WlFVRlpMRVZCUVVVc1QwRkJUeXhGUVVGRExFTkJRVU03U1VGRGRFUXNRMEZCUXp0SlFVVkVPenM3T3pzN08wOUJUMGM3U1VGRFN5eHJRa0ZCYTBJc1EwRkRlRUlzUTBGQlV5eEZRVU5VTEZWQlFXdENMRVZCUTJ4Q0xHRkJRV0VzUjBGQlJ5eEhRVUZITzFGQlJXNUNMRTFCUVUwc1JVRkJReXhWUVVGVkxFZEJRVWNzUlVGQlJTeEZRVUZGTEZsQlFWa3NSMEZCUnl4RlFVRkZMRVZCUVVVc2FVSkJRV2xDTEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkZja1VzVFVGQlRTeEZRVUZETEUxQlFVMHNSVUZCUlN4SlFVRkpMRVZCUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zYVVKQlFXbENMRU5CUXpORExGbEJRVmtzUlVGRFdpeFZRVUZWTEVWQlExWXNhVUpCUVdsQ0xFTkJRMnhDTEVOQlFVTTdVVUZGUml4TlFVRk5MRVZCUVVNc1NVRkJTU3hGUVVGRkxFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc01FSkJRVEJDTEVOQlEzaEVMRlZCUVZVc1JVRkRWaXhaUVVGWkxFVkJRMW9zVFVGQlRTeEZRVU5PTEVsQlFVa3NRMEZEVEN4RFFVRkRPMUZCUlVZc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVU5zUXl4TlFVRk5MRmxCUVZrc1IwRkJSeXhKUVVGSkxFMUJRVTBzUTBGQlF5eFpRVUZaTEVOQlFVTXNTVUZCU1N4RlFVRkZMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdVVUZGY2tVc1RVRkJUU3hUUVVGVExFZEJRVWNzVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRSUVVOcVJDeE5RVUZOTEZWQlFWVXNSMEZCUnl4TlFVRk5MRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNXVUZCV1N4RlFVRkZMRk5CUVZNc1EwRkJReXhEUVVGRE8xRkJSWEJGTEUxQlFVMHNRMEZCUXl4SFFVRkhMRTFCUVUwc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4WlFVRlpMRVZCUVVVc1UwRkJVeXhEUVVGRExFVkJRVVVzVlVGQlZTeERRVUZETEVOQlFVTTdVVUZETTBVc1RVRkJUU3hEUVVGRExFZEJRVWNzVFVGQlRTeERRVUZETEdOQlFXTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1lVRkJZU3hEUVVGRExFTkJRVU03VVVGRGJFUXNUVUZCVFN4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExHTkJRV01zUTBGQlF5eFZRVUZWTEVWQlFVVXNSMEZCUnl4SFFVRkhMR0ZCUVdFc1EwRkJReXhEUVVGRE8xRkJRMnBGTEUxQlFVMHNUVUZCVFN4SFFVRkhMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUldoRExFOUJRVThzVFVGQlRTeERRVUZETzBsQlEyaENMRU5CUVVNN1NVRkZSRHM3T3pzN1QwRkxSenRKUVVOTExHOURRVUZ2UXl4RFFVTXhReXhoUVVGclF5eEZRVU5zUXl4TlFVRm5RaXhGUVVOb1FpeFBRVUZsTEVWQlEyWXNWMEZCVnl4SFFVRkhMRWRCUVVjN1VVRkZha0lzU1VGQlNTeFpRVUZaTEVkQlFVY3NaMEpCUVdkQ0xFTkJRMnBETEdGQlFXRXNSVUZEWWl4TlFVRk5MRVZCUTA0c1YwRkJWeXhGUVVOWUxFOUJRVThzUTBGRFVpeERRVUZETzFGQlEwWXNXVUZCV1N4SFFVRkhMRTFCUVUwc1EwRkJReXhqUVVGakxFTkJRVU1zV1VGQldTeERRVUZETEVOQlFVTTdVVUZEYmtRc1QwRkJUeXh6UWtGQmMwSXNRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRKUVVNNVF5eERRVUZETzBsQlJVUTdPenM3T3p0UFFVMUhPMGxCUTBzc2FVSkJRV2xDTEVOQlEzWkNMRk5CUVd0Q0xFVkJRMnhDTEVOQlFWTXNSVUZEVkN4cFFrRkJhVUlzUjBGQlJ5eEhRVUZITEVWQlEzWkNMRXRCUVVzc1IwRkJSeXhGUVVGRkxFVkJRMVlzVTBGQlV5eEhRVUZITEVkQlFVYzdVVUZGWml4TlFVRk5MRTFCUVUwc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRk5CUVZNc1EwRkJRenRSUVVOMlJDeE5RVUZOTEVkQlFVY3NSMEZCUnl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0UlFVTXhReXhOUVVGTkxFMUJRVTBzUjBGQlJ5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVVUzUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU42UXl4SlFVRkpMRVZCUVVVc1IwRkJSeXhIUVVGSExFTkJRVU03V1VGRFlpeEpRVUZKTEVWQlFVVXNSMEZCUnl4UlFVRlJMRU5CUVVNN1dVRkRiRUlzU1VGQlNTeEhRVUZITEVkQlFVY3NSMEZCUnl4RFFVRkRPMWxCUldRc05rUkJRVFpFTzFsQlF6ZEVMRTFCUVUwc1dVRkJXU3hIUVVGSExGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTnNReXhOUVVGTkxGbEJRVmtzUjBGQlJ5eFpRVUZaTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVkQlFVY3NSMEZCUnl4RFFVRkRMRU5CUVVNN1dVRkZla1FzU1VGQlNTeFpRVUZaTEVOQlFVTXNUVUZCVFN4SlFVRkpMR2xDUVVGcFFpeEZRVUZGTzJkQ1FVTTFReXhOUVVGTkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMR2xDUVVGcFFpeERRVUZETEVOQlFVTTdaMEpCUXpWRExFMUJRVTBzWVVGQllTeEhRVUZITEdsQ1FVRnBRaXhIUVVGSExFdEJRVXNzUTBGQlF6dG5Ra0ZEYUVRc1NVRkJTU3hMUVVGTExFZEJRVWNzUTBGQlF5eEZRVUZGTzI5Q1FVTmlMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFpRVUZaTEVOQlFVTXNTMEZCU3l4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRE8yOUNRVU5xUXl4SlFVRkpMR0ZCUVdFc1IwRkJSeXhyUWtGQmEwSXNSVUZCUlR0M1FrRkRkRU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXpzMFFrRkRTaXhoUVVGaExFZEJRVWNzUTBGQlF5eFpRVUZaTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWRCUVVjc1dVRkJXU3hEUVVGRExFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPM0ZDUVVOdVJUdHBRa0ZEUmp0eFFrRkJUVHR2UWtGRFRDeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1lVRkJZU3hIUVVGSExGbEJRVmtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0cFFrRkRNVU03WVVGRFJqdHBRa0ZCVFN4SlFVRkpMRmxCUVZrc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF5eEZRVUZGTzJkQ1FVTnNReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhaUVVGWkxFTkJRVU1zUTBGQlF6dGhRVU5zUXp0WlFVVkVMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4TFFVRkxMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3WjBKQlF6bENMRWxCUVVrc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF6dG5Ra0ZEWml4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0dlFrRkROVU1zVFVGQlRTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenR2UWtGRGJrTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJRenQzUWtGRFVDeEpRVUZKTEVsQlFVa3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN08zZENRVVUzUWl4SlFVRkpMRWxCUVVrc1IwRkJSeXhEUVVGRE8ybENRVU5tTzJkQ1FVVkVMRWxCUVVrc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEpRVUZKTEVkQlFVY3NUVUZCVFN4RFFVRkRMRWRCUVVjc2EwSkJRV3RDTzI5Q1FVTTVReXhOUVVGTk8yZENRVWRTTEVsQlFVa3NTVUZCU1N4SFFVRkhMRTFCUVUwc1JVRkJSVHR2UWtGRGFrSXNSVUZCUlN4SFFVRkhMRWRCUVVjc1EwRkJRenR2UWtGRFZDeEhRVUZITEVkQlFVY3NRMEZCUXl4RlFVRkZMRWRCUVVjc1JVRkJSU3hEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETzJsQ1FVTjJRanR4UWtGQlRUdHZRa0ZEVEN4RlFVRkZMRWRCUVVjc1IwRkJSeXhEUVVGRE8yOUNRVU5VTEVsQlFVa3NSVUZCUlN4TFFVRkxMRkZCUVZFN2QwSkJRMnBDTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNN08zZENRVVZVTEVkQlFVY3NSMEZCUnl4RFFVRkRMRVZCUVVVc1IwRkJSeXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTTdhVUpCUTNwQ08yRkJRMFk3V1VGRlJDeE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRE8xbEJSV2hDTERaRVFVRTJSRHRaUVVNM1JDeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhIUVVGSExFVkJRVVU3WjBKQlEyaENMRTFCUVUwc1owSkJRV2RDTEVkQlFVY3NTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhaUVVGWkxFTkJRVU1zUTBGQlF6dG5Ra0ZEYkVRc1NVRkJTU3hOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NaMEpCUVdkQ0xFZEJRVWNzWjBKQlFXZENPMjlDUVVOcVJDeE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1owSkJRV2RDTEVkQlFVY3NaMEpCUVdkQ0xFTkJRVU03WVVGRGJrUTdhVUpCUVUwN1owSkJRMHdzVFVGQlRTeGhRVUZoTEVkQlFVY3NTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU0xUkN4SlFVRkpMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eG5Ra0ZCWjBJc1IwRkJSeXhoUVVGaE8yOUNRVU01UXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzWjBKQlFXZENMRWRCUVVjc1lVRkJZU3hEUVVGRE8yRkJRMmhFTzFOQlEwWTdVVUZGUkN4UFFVRlBMRVZCUVVNc1RVRkJUU3hGUVVGRkxFMUJRVTBzUlVGQlJTeEpRVUZKTEVWQlFVVXNSMEZCUnl4RlFVRkRMRU5CUVVNN1NVRkRja01zUTBGQlF6dEpRVVZFT3pzN096dFBRVXRITzBsQlEwc3NNRUpCUVRCQ0xFTkJRMmhETEZWQlFXMUNMRVZCUTI1Q0xGbEJRWEZDTEVWQlEzSkNMRTFCUVdkQ0xFVkJRMmhDTEVsQlFXTTdVVUZGWkN4TlFVRk5MRkZCUVZFc1IwRkJSeXhWUVVGVkxFTkJRVU1zVFVGQlRTeERRVUZETzFGQlEyNURMRTFCUVUwc1ZVRkJWU3hIUVVGSExGVkJRVlVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNN1VVRkZlRU1zVFVGQlRTeEpRVUZKTEVkQlFVY3NTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFZEJRVWNzVlVGQlZTeERRVUZETEVOQlFVTTdVVUZEYUVRc1RVRkJUU3hKUVVGSkxFZEJRVWNzUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRWRCUVVjc1ZVRkJWU3hEUVVGRExFTkJRVU03VVVGRGFFUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVkQlFVY3NWVUZCVlN4RFFVRkRMRU5CUVVNN1VVRkZhRVFzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGRkJRVkVzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTnFReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1ZVRkJWU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzJkQ1FVTnVReXhKUVVGSkxFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTTdaMEpCUTFvc1NVRkJTU3hWUVVGVkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8yOUNRVU42UWl4VFFVRlRMRU5CUVVNc2JVTkJRVzFETzJkQ1FVVXZReXhKUVVGSkxGVkJRVlVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhEUVVGRE8yOUNRVU40UWl4SFFVRkhMRWRCUVVjc1IwRkJSeXhEUVVGRE8zRkNRVU5RTEVsQlFVa3NXVUZCV1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hIUVVGSE8yOUNRVU14UXl4SFFVRkhMRWRCUVVjc1IwRkJSeXhEUVVGRE96dHZRa0ZGVml4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGSGFFVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1IwRkJSeXhWUVVGVkxFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVNM1FpeEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRlZCUVZVc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eFZRVUZWTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlF6VkRMRWxCUVVrc1EwRkJReXhEUVVGRExFZEJRVWNzVlVGQlZTeEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJRenRoUVVOb1F6dFRRVU5HTzFGQlJVUXNUMEZCVHl4RlFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzU1VGQlNTeEZRVUZETEVOQlFVTTdTVUZETlVJc1EwRkJRenRKUVVWRU96czdPenRQUVV0SE8wbEJRMHNzWjBOQlFXZERPMUZCUTNSRExFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJRenRSUVVWc1F5eE5RVUZOTEVWQlFVTXNWMEZCVnl4RlFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRE8xRkJRek5DTEUxQlFVMHNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTTdVVUZETTBNc1NVRkJTU3hSUVVGUkxFZEJRVWNzUTBGQlF5eERRVUZETzFGQlEycENMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4WFFVRlhMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFsQlF6TkRMRTFCUVUwc1MwRkJTeXhIUVVGSExGZEJRVmNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTTNRaXhKUVVGSkxGRkJRVkVzUjBGQlJ5eFhRVUZYTEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVNelFpeFJRVUZSTEVkQlFVY3NTMEZCU3l4RFFVRkRPMU5CUTNCQ08xRkJSVVFzVFVGQlRTeExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eExRVUZMTEVWQlFVVXNSVUZCUlR0WlFVTnlReXhKUVVGSkxFdEJRVXNzUjBGQlJ5eFJRVUZSTEVkQlFVY3NUMEZCVHp0blFrRkROVUlzVDBGQlR5eERRVUZETEVOQlFVTTdPMmRDUVVWVUxFOUJRVThzUzBGQlN5eERRVUZETzFGQlEycENMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJSVWdzZVVWQlFYbEZPMUZCUTNwRkxHbEZRVUZwUlR0UlFVTnFSU3hYUVVGWE8xRkJRMWdzU1VGQlNTeERRVUZETEZOQlFWTXNSMEZCUnl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRk8xbEJRMnBFTEU5QlFVOHNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhYUVVGWExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZPMmRDUVVOMlF5eFBRVUZQTEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVWQlFVVXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExIZENRVUYzUWp0WlFVTjRSU3hEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5NTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUlVnc2JVTkJRVzFETzFGQlEyNURMRTFCUVUwc1QwRkJUeXhIUVVGaExFVkJRVVVzUTBGQlF6dFJRVU0zUWl4TlFVRk5MRWxCUVVrc1IwRkJZU3hGUVVGRkxFTkJRVU03VVVGRE1VSXNUVUZCVFN4SlFVRkpMRWRCUVdFc1JVRkJSU3hEUVVGRE8xRkJRekZDTEUxQlFVMHNXVUZCV1N4SFFVRkhMRXRCUVVzc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF6dFJRVU53UXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NXVUZCV1N4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU0xUXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhaUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZET1VJc1NVRkJTU3hMUVVGTExFTkJRVU1zUzBGQlN5eEZRVUZGTzJkQ1FVTm1MRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMmRDUVVNeFFpeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dG5Ra0ZEY2tJc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1lVRkRkRUk3VTBGRFJqdFJRVU5FTEUxQlFVMHNaVUZCWlN4SFFVRkhMRWxCUVVrc1EwRkJReXh0UWtGQmJVSXNRMEZCUXl4UFFVRlBMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU03VVVGRmJrVXNUMEZCVHl4RlFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzWlVGQlpTeEZRVUZETEVOQlFVTTdTVUZEZGtNc1EwRkJRenRKUVVWRU96czdUMEZIUnp0SlFVTkxMRzFDUVVGdFFpeERRVUZETEU5QlFXbENMRVZCUVVVc1QwRkJaVHRSUVVNMVJDeE5RVUZOTEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOc1JDeE5RVUZOTEVkQlFVY3NSMEZCUnl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzFGQlF5OUNMRTFCUVUwc1VVRkJVU3hIUVVGSExFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRE8xRkJRM3BFTEZGQlFWRXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZEZUVJc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF6dG5Ra0ZCUlN4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzVDBGQlR5eEhRVUZITEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVNdlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTklMRTlCUVU4c1RVRkJUU3hEUVVGRE8wbEJRMmhDTEVOQlFVTTdTVUZGUkRzN1QwRkZSenRKUVVOTExHbERRVUZwUXl4RFFVRkRMRXRCUVdsRE8xRkJRM3BGTEUxQlFVMHNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExHbENRVUZwUWl4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8wbEJReTlETEVOQlFVTTdTVUZGUkRzN08wOUJSMGM3U1VGRFN5d3dRa0ZCTUVJN1VVRkRhRU1zYTBKQlFXdENPMUZCUTJ4Q0xFMUJRVTBzUlVGQlF5eHBRa0ZCYVVJc1JVRkJSU3haUVVGWkxFVkJRVVVzYTBKQlFXdENMRVZCUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU03VVVGRmJrVXNUVUZCVFN4RlFVTktMR1ZCUVdVc1JVRkRaaXhoUVVGaExFVkJRMklzWVVGQllTeEhRVU5rTEVkQlFVY3NTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeERRVUZETzFGQlJUTkNMRTFCUVUwc1IwRkJSeXhIUVVGSExHRkJRV0VzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNN1VVRkRjRU1zVFVGQlRTeFRRVUZUTEVkQlFVY3NZVUZCWVN4RFFVRkRMRTFCUVUwc1MwRkJTeXhoUVVGaExFTkJRVU1zVFVGQlRTeERRVUZETzFGQlJXaEZMRTFCUVUwc2RVSkJRWFZDTEVkQlFVY3NaVUZCWlN4RFFVRkRMRWRCUVVjc1EwRkRha1FzUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1IwRkJSeXhyUWtGQmEwSXNRMEZET1VJc1EwRkJRenRSUVVOR0xFMUJRVTBzZVVKQlFYbENMRWRCUVVjc1EwRkJReXhIUVVGSExIVkNRVUYxUWl4RFFVRkRMRU5CUVVNN1VVRkRMMFFzVFVGQlRTeHBRa0ZCYVVJc1IwRkJSeXhEUVVGRExFZEJRVWNzWlVGQlpTeERRVUZETEVOQlFVTTdVVUZGTDBNc1NVRkJTU3hEUVVGRExHbERRVUZwUXl4RFFVRkRPMWxCUTNKRExHbENRVUZwUWp0WlFVTnFRaXg1UWtGQmVVSTdXVUZEZWtJc2RVSkJRWFZDTzFsQlEzWkNMRk5CUVZNN1dVRkRWQ3haUVVGWkxFVkJRVVVzV1VGQldUdFpRVU14UWl4TFFVRkxMRVZCUVVVc1dVRkJXVHRaUVVOdVFpeExRVUZMTEVWQlFVVXNhVUpCUVdsQ08xbEJRM2hDTEVkQlFVYzdVMEZEU2l4RFFVRkRMRU5CUVVNN1NVRkRUQ3hEUVVGRE8wbEJSVVE3TzA5QlJVYzdTVUZEU3l4elFrRkJjMEk3VVVGRE5VSXNhMEpCUVd0Q08xRkJRMnhDTEUxQlFVMHNZVUZCWVN4SFFVRkhMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU03VVVGRGNrTXNUVUZCVFN4aFFVRmhMRWRCUVVjc1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF6dFJRVVZ5UXl4dlJFRkJiMFE3VVVGRGNFUXNUVUZCVFN4RlFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzWlVGQlpTeEZRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeERRVUZETzFGQlJUZEVMRTFCUVUwc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXp0UlFVTnNReXhOUVVGTkxGTkJRVk1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVWdVF5eE5RVUZOTEVWQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJReXhIUVVGSExGbEJRVmtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dFJRVVYyUkN4SlFVRkpMRU5CUVVNc2FVTkJRV2xETEVOQlFVTTdXVUZEY2tNc1lVRkJZVHRaUVVOaUxHRkJRV0U3V1VGRFlpeEpRVUZKTzFsQlEwb3NTVUZCU1R0WlFVTktMR1ZCUVdVN1dVRkRaaXhEUVVGRE8xbEJRMFFzUTBGQlF6dFpRVU5FTEU5QlFVODdXVUZEVUN4VFFVRlRPMU5CUTFZc1EwRkJReXhEUVVGRE8wbEJRMHdzUTBGQlF6dEpRVVZFT3pzN096czdUMEZOUnp0SlFVTkxMR3RDUVVGclFpeERRVUZETEVOQlFWTTdVVUZEYkVNc1RVRkJUU3hGUVVGRExHbENRVUZwUWl4RlFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRE8xRkJRMnBETEUxQlFVMHNSVUZEU2l4SlFVRkpMRVZCUTBvc1NVRkJTU3hGUVVOS0xHRkJRV0VzUlVGRFlpeGhRVUZoTEVWQlEySXNaVUZCWlN4RlFVTm1MR2xDUVVGcFFpeEZRVU5xUWl4NVFrRkJlVUlzUlVGRGVrSXNkVUpCUVhWQ0xFVkJRM1pDTEZOQlFWTXNSVUZEVkN4WlFVRlpMRVZCUTFvc1MwRkJTeXhGUVVOTUxFdEJRVXNzUlVGRFRDeERRVUZETEVWQlEwUXNRMEZCUXl4RlFVTkVMRWRCUVVjc1JVRkRTQ3hQUVVGUExFVkJRMUFzVTBGQlV5eEhRVU5XTEVkQlFVY3NhVUpCUVdsQ0xFTkJRVU03VVVGRmRFSXNUVUZCVFN4VFFVRlRMRWRCUVVjc1IwRkJSeXhEUVVGRE8xRkJSWFJDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eGxRVUZsTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJReTlETEVsQlFVa3NhVUpCUVdsQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXp0blFrRkRNVUlzVTBGQlV6dFpRVWRZTEUxQlFVMHNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5zUWl4TlFVRk5MRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZGYkVJc1RVRkJUU3hQUVVGUExFZEJRVWNzWVVGQllTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUTJwRExFMUJRVTBzUzBGQlN5eEhRVUZITEdGQlFXRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVVdlFpeE5RVUZOTEZkQlFWY3NSMEZCUnl4TFFVRkxMRU5CUVVNc1QwRkJUeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzFsQlJURkRMRWxCUVVrc1UwRkJVeXhIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU5zUWl4SlFVRkpMRmRCUVZjc1IwRkJSeXhEUVVGRExFVkJRVVU3WjBKQlEyNUNMRk5CUVZNc1IwRkJSeXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1EwRkJRenRuUWtGRE1VUXNVMEZCVXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEZkQlFWY3NSVUZCUlN4RFFVRkRMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU03WVVGRGFrUTdXVUZGUkN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NSMEZCUnl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yZENRVU0xUWl4TlFVRk5MRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zVTBGQlV5eEhRVUZITEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRk5CUVZNc1EwRkJReXhEUVVGRE8yZENRVU51UlN4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUzBGQlN5eEhRVUZITEV0QlFVc3NRMEZCUXp0blFrRkROVUlzU1VGQlNTeFRRVUZUTzI5Q1FVTllMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NSMEZCUnl4TFFVRkxMRU5CUVVNN1lVRkRPVUk3V1VGRlJDeHBRa0ZCYVVJc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeGxRVUZsTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkZNME1zVFVGQlRTeFhRVUZYTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkROVUlzUTBGQlF5eERRVUZETEVkQlFVY3NlVUpCUVhsQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4MVFrRkJkVUlzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZEYUVVc1EwRkJRenRaUVVWR0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhYUVVGWExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdaMEpCUTNCRExFMUJRVTBzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXl4VlFVRlZMRU5CUVVNc1UwRkJVeXhGUVVGRkxFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0blFrRkRia1FzVFVGQlRTeExRVUZMTEVkQlFVY3NZVUZCWVN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVVV2UWl4TlFVRk5MRmRCUVZjc1IwRkJSeXhMUVVGTExFTkJRVU1zVDBGQlR5eEZRVUZGTEV0QlFVc3NRMEZCUXl4RFFVRkRPMmRDUVVVeFF5eEpRVUZKTEZOQlFWTXNSMEZCUnl4SFFVRkhMRU5CUVVNN1owSkJRM0JDTEVsQlFVa3NWMEZCVnl4SFFVRkhMRWRCUVVjc1JVRkJSVHR2UWtGRGNrSXNVMEZCVXl4SFFVRkhMRWRCUVVjc1IwRkJSeXhMUVVGTExFZEJRVWNzUTBGQlF5eERRVUZETzI5Q1FVTTFRaXhUUVVGVE8zZENRVU5RTEVOQlFVTXNTMEZCU3l4SFFVRkhMRmRCUVZjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRPMmxDUVVNNVJEdHhRa0ZCVFN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFVkJRVVU3YjBKQlEyeENMRk5CUVZNN2FVSkJRMVk3WjBKQlJVUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVkQlFVY3NSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHR2UWtGRE5VSXNTVUZCU1N4TFFVRkxMRWRCUVVjc1IwRkJSeXhEUVVGRE8yOUNRVU5vUWl4SlFVRkpMRk5CUVZNc1IwRkJSeXhIUVVGSE8zZENRVU5xUWl4TFFVRkxMRWRCUVVjc1NVRkJTU3hEUVVGRExGTkJRVk1zUjBGQlJ5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4VFFVRlRMRU5CUVVNc1EwRkJRenR2UWtGRkwwUXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFdEJRVXNzUjBGQlJ5eExRVUZMTEVOQlFVTTdhVUpCUXpkQ08yRkJRMFk3V1VGRFJDeDVRa0ZCZVVJc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeFhRVUZYTEVkQlFVY3NkVUpCUVhWQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVMEZETVVVN1VVRkRSQ3hwUWtGQmFVSXNRMEZCUXl4TFFVRkxMRWRCUVVjc1dVRkJXU3hIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1EwRkJRenRSUVVVM1JDeHBRa0ZCYVVJc1EwRkJReXhaUVVGWkxFbEJRVWtzUTBGQlF5eERRVUZETzFGQlEzQkRMRTlCUVU4c1lVRkJZU3hEUVVGRE8wbEJRM1pDTEVOQlFVTTdTVUZGUkRzN096czdPMDlCVFVjN1NVRkRTeXh0UWtGQmJVSXNRMEZEZWtJc1owSkJRWGxFTEVkQlFVY3NSVUZCUlN4RFFVRkRMRWxCUVVrN1VVRkZia1VzVDBGQlR5eEpRVUZKTEU5QlFVOHNRMEZCUXl4RFFVRkRMRTlCUVU4c1JVRkJSU3hOUVVGTkxFVkJRVVVzUlVGQlJUdFpRVU55UXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhMUVVGTExFbEJRVWtzUlVGQlJUdG5Ra0ZEZEVJc1NVRkJTVHR2UWtGRFJpeE5RVUZOTEVWQlFVTXNUMEZCVHl4RlFVRkZMRmxCUVZrc1JVRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eHBRa0ZCYVVJc1EwRkJRenR2UWtGRGRrUXNTVUZCU1N4RFFVRkRMRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU03YjBKQlEzWkVMRTFCUVUwc1kwRkJZeXhIUVVGSExFbEJRVWtzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhaUVVGWkxFTkJRVU03YjBKQlF6TkVMRTFCUVUwc1ZVRkJWU3hIUVVGSExHRkJRV0VzUTBGQlF5eGpRVUZqTEVOQlFVTXNTMEZCU3l4TFFVRkxMRU5CUVVNN2IwSkJRek5FTEUxQlFVMHNWVUZCVlN4SFFVRkhMR05CUVdNc1MwRkJTeXhQUVVGUExFTkJRVU03YjBKQlF6bERMRWxCUVVrc1EwRkJReXhWUVVGVkxFbEJRVWtzUTBGQlF5eFZRVUZWTzNkQ1FVTTFRaXhWUVVGVkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNTVUZCU1N4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03TzNkQ1FVVTFRaXhQUVVGUExFOUJRVThzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0cFFrRkRPVUk3WjBKQlFVTXNUMEZCVHl4SFFVRkhMRVZCUVVVN2IwSkJRMW9zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMmxDUVVOaU8xbEJRMGdzUTBGQlF5eERRVUZETzFsQlEwWXNWVUZCVlN4RFFVRkRMRWRCUVVjc1JVRkJSU3hEUVVGRExFbEJRVWtzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUXpsQ0xFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEwd3NRMEZCUXp0SlFVVkVPenM3T3pzN1QwRk5SenRKUVVOTExHTkJRV01zUTBGRGNFSXNaMEpCUVhsRUxFZEJRVWNzUlVGQlJTeERRVUZETEVsQlFVazdVVUZGYmtVc1NVRkJTU3hWUVVGVkxFZEJRVWNzUzBGQlN5eERRVUZETzFGQlEzWkNMRWxCUVVrc1UwRkJVeXhIUVVGWkxFVkJRVVVzUTBGQlF6dFJRVU0xUWl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hGUVVGRk8xbEJRMnhDTEUxQlFVMHNSVUZCUXl4UFFVRlBMRVZCUVVVc1dVRkJXU3hGUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhEUVVGRE8xbEJRM1pFTEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNN1dVRkRiRVFzVFVGQlRTeGpRVUZqTEVkQlFVY3NTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeERRVUZETEZsQlFWa3NRMEZCUXp0WlFVTXpSQ3hOUVVGTkxGVkJRVlVzUjBGQlJ5eGhRVUZoTEVOQlFVTXNZMEZCWXl4RFFVRkRMRXRCUVVzc1MwRkJTeXhEUVVGRE8xbEJRek5FTEZWQlFWVXNSMEZCUnl4alFVRmpMRXRCUVVzc1QwRkJUeXhKUVVGSkxGVkJRVlVzUTBGQlF6dFRRVU4yUkR0UlFVTkVMRTlCUVU4c1UwRkJVeXhEUVVGRE8wbEJRMjVDTEVOQlFVTTdTVUZGUkRzN08wOUJSMGM3U1VGRFNTeFZRVUZWTzFGQlEyWXNUVUZCVFN4TFFVRkxMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF6dFJRVVY2UWl4SlFVRkpMRWxCUVVrc1EwRkJReXhQUVVGUExFZEJRVWNzUTBGQlF6dFpRVU5zUWl4UFFVRlBMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU03VVVGSGRFSXNTVUZCU1N4RFFVRkRMRXRCUVVzN1dVRkRVaXhQUVVGUExFZEJRVWNzUTBGQlF6dFJRVWRpTEUxQlFVMHNUVUZCVFN4SFFVRkhMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU03VVVGRE0wSXNTVUZCU1N4TlFVRk5MRWxCUVVrc1NVRkJTVHRaUVVOb1FpeFBRVUZQTEVkQlFVY3NRMEZCUXp0aFFVTlNMRWxCUVVrc1RVRkJUU3hKUVVGSkxFbEJRVWs3V1VGRGNrSXNUMEZCVHl4SFFVRkhMRU5CUVVNN1lVRkRVaXhKUVVGSkxFMUJRVTBzU1VGQlNTeEpRVUZKTzFsQlEzSkNMRTlCUVU4c1IwRkJSeXhEUVVGRE96dFpRVVZZTEU5QlFVOHNSMEZCUnl4RFFVRkRPMGxCUTJZc1EwRkJRenREUVVOR08wRkJSVVFzVFVGQlRTeFZRVUZWTEZOQlFWTXNRMEZCUXl4RFFVRlRMRVZCUVVVc1EwRkJVenRKUVVNMVF5eEpRVUZKTEUxQlFVMHNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRaaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVTdVVUZETDBJc1RVRkJUU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVVXZRaXhQUVVGUExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1FVRkRNMElzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4UFFVRlBMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk03U1VGRE1VTXNUVUZCVFN4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRMMElzVDBGQlR5eE5RVUZOTEVOQlFVTTdRVUZEYUVJc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeE5RVUZOTEVOQlFVTXNRMEZCVXl4RlFVRkZMRU5CUVZNN1NVRkRla01zU1VGQlNTeE5RVUZOTEVkQlFVY3NSMEZCUnl4RFFVRkRPMGxCUTJwQ0xFbEJRVWtzUzBGQlN5eEhRVUZITEVkQlFVY3NRMEZCUXp0SlFVTm9RaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eEhRVUZITEVOQlFVTTdTVUZGYUVJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdVVUZEYWtNc1RVRkJUU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGRFSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdVVUZEYmtJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN1MwRkRjRUk3U1VGRlJDeEpRVUZKTEV0QlFVc3NTMEZCU3l4RFFVRkRMRWxCUVVrc1MwRkJTeXhMUVVGTExFTkJRVU03VVVGRE5VSXNUMEZCVHl4RFFVRkRMRU5CUVVNN1UwRkRUaXhKUVVGSkxFdEJRVXNzUzBGQlN5eERRVUZETEVsQlFVa3NTMEZCU3l4TFFVRkxMRU5CUVVNN1VVRkRha01zVDBGQlR5eEhRVUZITEVOQlFVTTdPMUZCUlZnc1QwRkJUeXhIUVVGSExFZEJRVWNzVFVGQlRTeEhRVUZITEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhIUVVGSExFdEJRVXNzUTBGQlF5eERRVUZETzBGQlEyNUVMRU5CUVVNN1FVRkZSRHM3TzBkQlIwYzdRVUZEU0N4TlFVRk5MR2xDUVVGcFFqdEpRVU55UWl4WlFVRlpMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJSV3BDTERCRFFVRXdRenRKUVVNeFF5eGhRVUZoTEVkQlFXVXNSVUZCUlN4RFFVRkRPMGxCUXk5Q0xHRkJRV0VzUjBGQlpTeEZRVUZGTEVOQlFVTTdTVUZETDBJc1NVRkJTU3hIUVVGaExFVkJRVVVzUTBGQlF6dEpRVU53UWl4SlFVRkpMRWRCUVdFc1JVRkJSU3hEUVVGRE8wbEJRM0JDTEdWQlFXVXNSMEZCWVN4RlFVRkZMRU5CUVVNN1NVRkRMMElzYVVKQlFXbENMRWRCUVdFc1JVRkJSU3hEUVVGRE8wbEJRMnBETEhsQ1FVRjVRaXhIUVVGaExFVkJRVVVzUTBGQlF6dEpRVU42UXl4MVFrRkJkVUlzUjBGQllTeEZRVUZGTEVOQlFVTTdTVUZEZGtNc1UwRkJVeXhIUVVGSExFbEJRVWtzUTBGQlF6dEpRVU5xUWl4WlFVRlpMRWRCUVVjc1IwRkJSeXhEUVVGRE8wbEJRMjVDTEV0QlFVc3NSMEZCUnl4SFFVRkhMRU5CUVVNN1NVRkRXaXhMUVVGTExFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlExb3NRMEZCUXl4SFFVRkhMR3RDUVVGclFpeERRVUZETzBsQlEzWkNMRU5CUVVNc1IwRkJSeXhyUWtGQmEwSXNRMEZCUXp0SlFVTjJRaXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlExSXNUMEZCVHl4SFFVRkhMRWRCUVVjc1EwRkJRenRKUVVOa0xGTkJRVk1zUjBGQlJ5eERRVUZETEVOQlFVTTdRMEZEWmp0QlFVVkVPenRIUVVWSE8wRkJRMGdzVTBGQlV5eEpRVUZKTEVOQlFVTXNRMEZCVXl4RlFVRkZMRk5CUVdsQ08wbEJRM2hETEVsQlFVa3NRMEZCUXl4SFFVRkhMRk5CUVZNN1VVRkJSU3hQUVVGUExGTkJRVk1zUTBGQlF6dFRRVU12UWl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExGTkJRVk03VVVGQlJTeFBRVUZQTEVOQlFVTXNVMEZCVXl4RFFVRkRPenRSUVVOMFF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0QlFVTm9RaXhEUVVGRE8wRkJSVVE3TzBkQlJVYzdRVUZEU0N4VFFVRlRMRXRCUVVzc1EwRkJReXhEUVVGWExFVkJRVVVzUTBGQlZ6dEpRVU55UXl4SlFVRkpMRTFCUVUwc1IwRkJSeXhIUVVGSExFTkJRVU03U1VGRGFrSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRk8xRkJReTlDTEUxQlFVMHNTVUZCU1N4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZGY2tNc1QwRkJUeXhOUVVGTkxFTkJRVU03UVVGRGFFSXNRMEZCUXp0QlFVVkVPenM3T3p0SFFVdEhPMEZCUTBnc1RVRkJUU3hWUVVGVkxGbEJRVmtzUTBGQlF5eE5RVUZqTEVWQlFVVXNUMEZCWlR0SlFVTXhSQ3hOUVVGTkxFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJWeXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFWTXNSVUZCUlN4RlFVRkZPMUZCUTJoRUxFOUJRVThzUjBGQlJ5eEhRVUZITEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVONFF5eERRVUZETEVOQlFVTTdTVUZGUml4TlFVRk5MRVZCUVVVc1IwRkJSeXhMUVVGTE8xTkJRMklzVFVGQlRTeERRVUZETEVOQlFVTXNSVUZCUlN4TlFVRk5MRWRCUVVjc1EwRkJReXhGUVVGRkxFZEJRVWNzUTBGQlF6dFRRVU14UWl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJSVGRETEUxQlFVMHNSVUZCUlN4SFFVRkhMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUlVGQlJTeExRVUZMTEVWQlFVVXNSVUZCUlR0UlFVTnVSQ3hOUVVGTkxFZEJRVWNzUjBGQlJ5eEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1QwRkJUeXhEUVVGRE8xRkJRMnBETEU5QlFVOHNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEVkQlFVY3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF6dEpRVU12UkN4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVWSUxFMUJRVTBzWVVGQllTeEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMnBETEUxQlFVMHNTVUZCU1N4SFFVRkhMRVZCUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlN4RlFVRkRMRU5CUVVNN1NVRkZOVUlzTUVSQlFUQkVPMGxCUXpGRUxFMUJRVTBzVDBGQlR5eEhRVUZITzFGQlEyUXNUMEZCVHl4RlFVRkZMRWRCUVVjN1VVRkRXaXhoUVVGaE8xRkJRMklzYTBKQlFXdENMRVZCUVVVc1MwRkJTenRSUVVONlFpeGhRVUZoTEVWQlFVVXNSMEZCUnp0UlFVTnNRaXhqUVVGakxFVkJRVVVzUzBGQlN6dExRVU4wUWl4RFFVRkRPMGxCUlVZc2JVTkJRVzFETzBsQlEyNURMRTFCUVUwc1JVRkJReXhsUVVGbExFVkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU51UkN4TlFVRk5MRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEhRVUZITEdWQlFUSkNMRU5CUVVNN1NVRkRNME1zVDBGQlR5eEZRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVNc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPenRIUVVkSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVNNVFpeExRVUV3UWl4RlFVTXhRaXhOUVVGblFpeEZRVU5vUWl4WFFVRlhMRWRCUVVjc1IwRkJSeXhGUVVOcVFpeFBRVUZQTEVkQlFVY3NSMEZCUnp0SlFVVmlMRTlCUVU4c1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEV0QlFVc3NSVUZCUlN4SFFVRkhMRVZCUVVVc1IwRkJSeXhGUVVGRkxFVkJRVVU3VVVGRGJrTXNTVUZCU1N4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVsQlFVa3NUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFpRVU14UXl4UFFVRlBMRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNWMEZCVnl4RFFVRkRMRU5CUVVNN1lVRkRia01zU1VGQlNTeE5RVUZOTEVOQlFVTXNSMEZCUnl4RFFVRkRMRXRCUVVzc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF6dFpRVU5zUXl4UFFVRlBMRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN08xbEJSV3hETEU5QlFVOHNTMEZCU3l4RFFVRkRPMGxCUTJwQ0xFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEwd3NRMEZCUXp0QlFVVkVPenM3T3p0SFFVdEhPMEZCUTBnc1RVRkJUU3hWUVVGVkxITkNRVUZ6UWl4RFFVRkRMR0ZCUVd0RE8wbEJRM1pGTEdGQlFXRXNSMEZCUnl4TlFVRk5MRU5CUVVNc1UwRkJVeXhEUVVGRExHRkJRV0VzYTBOQlFYTkNMRU5CUVVNN1NVRkRja1VzVFVGQlRTeFRRVUZUTEVkQlFVY3NUVUZCVFN4RFFVRkRMRk5CUVZNc1EwRkJReXhoUVVGaExFTkJRVU1zUTBGQlF6dEpRVU5zUkN4TlFVRk5MRlZCUVZVc1IwRkJSeXhOUVVGTkxFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1UwRkJVeXhGUVVGRkxHRkJRV0VzUTBGQlF5eERRVUZETzBsQlEzSkZMR0ZCUVdFc1IwRkJSeXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVU40UWl4aFFVRmhMRVZCUTJJc1RVRkJUU3hEUVVGRExGRkJRVkVzUTBGQlF5eFRRVUZUTEVWQlFVVXNWVUZCVlN4RFFVRkRMRU5CUTNaRExFTkJRVU03U1VGRFJpeFBRVUZQTEUxQlFVMHNRMEZCUXl4alFVRmpMRU5CUVVNc1lVRkJZU3hEUVVGRExFTkJRVU03UVVGRE9VTXNRMEZCUXp0QlFVVkVPenM3TzBkQlNVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1lVRkJZU3hEUVVNelFpeFBRVUZ0UWl4RlFVTnVRaXhQUVVGdFFpeEZRVU51UWl4VFFVRnJRanRKUVVWc1FpeE5RVUZOTEUxQlFVMHNSMEZCUnl4TFFVRkxPMU5CUTJwQ0xFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RFFVRkRPMU5CUTNKQ0xFZEJRVWNzUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RlFVRkZMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVZxUkN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUMEZCVHl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFJRVU4yUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTXhReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1UwRkJVeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRuUWtGRE5VTXNUVUZCVFN4RFFVRkRMRWRCUVVjc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVONFFpeE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRoUVVOcVJEdFRRVU5HTzB0QlEwWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZESWl3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaUx5b2daWE5zYVc1MExXUnBjMkZpYkdVZ2JXRjRMV3hsYmlBcUwxeHVMeW9xWEc0Z0tpQkFiR2xqWlc1elpWeHVJQ3BjYmlBcUlFTnZjSGx5YVdkb2RDQXlNREU1SUVkdmIyZHNaU0JNVEVNdUlFRnNiQ0JTYVdkb2RITWdVbVZ6WlhKMlpXUXVYRzRnS2x4dUlDb2dUR2xqWlc1elpXUWdkVzVrWlhJZ2RHaGxJRUZ3WVdOb1pTQk1hV05sYm5ObExDQldaWEp6YVc5dUlESXVNQ0FvZEdobElGd2lUR2xqWlc1elpWd2lLVHRjYmlBcUlIbHZkU0J0WVhrZ2JtOTBJSFZ6WlNCMGFHbHpJR1pwYkdVZ1pYaGpaWEIwSUdsdUlHTnZiWEJzYVdGdVkyVWdkMmwwYUNCMGFHVWdUR2xqWlc1elpTNWNiaUFxSUZsdmRTQnRZWGtnYjJKMFlXbHVJR0VnWTI5d2VTQnZaaUIwYUdVZ1RHbGpaVzV6WlNCaGRGeHVJQ3BjYmlBcUlDQWdJQ0JvZEhSd09pOHZkM2QzTG1Gd1lXTm9aUzV2Y21jdmJHbGpaVzV6WlhNdlRFbERSVTVUUlMweUxqQmNiaUFxWEc0Z0tpQlZibXhsYzNNZ2NtVnhkV2x5WldRZ1lua2dZWEJ3YkdsallXSnNaU0JzWVhjZ2IzSWdZV2R5WldWa0lIUnZJR2x1SUhkeWFYUnBibWNzSUhOdlpuUjNZWEpsWEc0Z0tpQmthWE4wY21saWRYUmxaQ0IxYm1SbGNpQjBhR1VnVEdsalpXNXpaU0JwY3lCa2FYTjBjbWxpZFhSbFpDQnZiaUJoYmlCY0lrRlRJRWxUWENJZ1FrRlRTVk1zWEc0Z0tpQlhTVlJJVDFWVUlGZEJVbEpCVGxSSlJWTWdUMUlnUTA5T1JFbFVTVTlPVXlCUFJpQkJUbGtnUzBsT1JDd2daV2wwYUdWeUlHVjRjSEpsYzNNZ2IzSWdhVzF3YkdsbFpDNWNiaUFxSUZObFpTQjBhR1VnVEdsalpXNXpaU0JtYjNJZ2RHaGxJSE53WldOcFptbGpJR3hoYm1kMVlXZGxJR2R2ZG1WeWJtbHVaeUJ3WlhKdGFYTnphVzl1Y3lCaGJtUmNiaUFxSUd4cGJXbDBZWFJwYjI1eklIVnVaR1Z5SUhSb1pTQk1hV05sYm5ObExseHVJQ29nUFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlYRzRnS2k5Y2JseHVMeW9xWEc0Z0tpQlVhR2x6SUdseklHRWdTbUYyWVZOamNtbHdkQ0J5WldsdGNHeGxiV1Z1ZEdGMGFXOXVJRzltSUZWTlFWQWdLRzl5YVdkcGJtRnNJR3hwWTJWdWMyVWdZbVZzYjNjcExDQm1jbTl0WEc0Z0tpQjBhR1VnY0hsMGFHOXVJR2x0Y0d4bGJXVnVkR0YwYVc5dUlHWnZkVzVrSUdGMElHaDBkSEJ6T2k4dloybDBhSFZpTG1OdmJTOXNiV05wYm01bGN5OTFiV0Z3TGx4dUlDcGNiaUFxSUVCaGRYUm9iM0lnWVc1a2VXTnZaVzVsYmtCbmIyOW5iR1V1WTI5dElDaEJibVI1SUVOdlpXNWxiaWxjYmlBcUwxeHVYRzR2S2lwY2JpQXFJRUJzYVdObGJuTmxYRzRnS2lCQ1UwUWdNeTFEYkdGMWMyVWdUR2xqWlc1elpWeHVJQ3BjYmlBcUlFTnZjSGx5YVdkb2RDQW9ZeWtnTWpBeE55d2dUR1ZzWVc1a0lFMWpTVzV1WlhOY2JpQXFJRUZzYkNCeWFXZG9kSE1nY21WelpYSjJaV1F1WEc0Z0tseHVJQ29nVW1Wa2FYTjBjbWxpZFhScGIyNGdZVzVrSUhWelpTQnBiaUJ6YjNWeVkyVWdZVzVrSUdKcGJtRnllU0JtYjNKdGN5d2dkMmwwYUNCdmNpQjNhWFJvYjNWMFhHNGdLaUJ0YjJScFptbGpZWFJwYjI0c0lHRnlaU0J3WlhKdGFYUjBaV1FnY0hKdmRtbGtaV1FnZEdoaGRDQjBhR1VnWm05c2JHOTNhVzVuSUdOdmJtUnBkR2x2Ym5NZ1lYSmxJRzFsZERwY2JpQXFYRzRnS2lBcUlGSmxaR2x6ZEhKcFluVjBhVzl1Y3lCdlppQnpiM1Z5WTJVZ1kyOWtaU0J0ZFhOMElISmxkR0ZwYmlCMGFHVWdZV0p2ZG1VZ1kyOXdlWEpwWjJoMElHNXZkR2xqWlN3Z2RHaHBjMXh1SUNvZ0lDQnNhWE4wSUc5bUlHTnZibVJwZEdsdmJuTWdZVzVrSUhSb1pTQm1iMnhzYjNkcGJtY2daR2x6WTJ4aGFXMWxjaTVjYmlBcVhHNGdLaUFxSUZKbFpHbHpkSEpwWW5WMGFXOXVjeUJwYmlCaWFXNWhjbmtnWm05eWJTQnRkWE4wSUhKbGNISnZaSFZqWlNCMGFHVWdZV0p2ZG1VZ1kyOXdlWEpwWjJoMElHNXZkR2xqWlN4Y2JpQXFJQ0FnZEdocGN5QnNhWE4wSUc5bUlHTnZibVJwZEdsdmJuTWdZVzVrSUhSb1pTQm1iMnhzYjNkcGJtY2daR2x6WTJ4aGFXMWxjaUJwYmlCMGFHVWdaRzlqZFcxbGJuUmhkR2x2Ymx4dUlDb2dJQ0JoYm1RdmIzSWdiM1JvWlhJZ2JXRjBaWEpwWVd4eklIQnliM1pwWkdWa0lIZHBkR2dnZEdobElHUnBjM1J5YVdKMWRHbHZiaTVjYmlBcVhHNGdLaUFxSUU1bGFYUm9aWElnZEdobElHNWhiV1VnYjJZZ2RHaGxJR052Y0hseWFXZG9kQ0JvYjJ4a1pYSWdibTl5SUhSb1pTQnVZVzFsY3lCdlppQnBkSE5jYmlBcUlDQWdZMjl1ZEhKcFluVjBiM0p6SUcxaGVTQmlaU0IxYzJWa0lIUnZJR1Z1Wkc5eWMyVWdiM0lnY0hKdmJXOTBaU0J3Y205a2RXTjBjeUJrWlhKcGRtVmtJR1p5YjIxY2JpQXFJQ0FnZEdocGN5QnpiMlowZDJGeVpTQjNhWFJvYjNWMElITndaV05wWm1saklIQnlhVzl5SUhkeWFYUjBaVzRnY0dWeWJXbHpjMmx2Ymk1Y2JpQXFYRzRnS2lCVVNFbFRJRk5QUmxSWFFWSkZJRWxUSUZCU1QxWkpSRVZFSUVKWklGUklSU0JEVDFCWlVrbEhTRlFnU0U5TVJFVlNVeUJCVGtRZ1EwOU9WRkpKUWxWVVQxSlRJRndpUVZNZ1NWTmNJbHh1SUNvZ1FVNUVJRUZPV1NCRldGQlNSVk5USUU5U0lFbE5VRXhKUlVRZ1YwRlNVa0ZPVkVsRlV5d2dTVTVEVEZWRVNVNUhMQ0JDVlZRZ1RrOVVJRXhKVFVsVVJVUWdWRThzSUZSSVJWeHVJQ29nU1UxUVRFbEZSQ0JYUVZKU1FVNVVTVVZUSUU5R0lFMUZVa05JUVU1VVFVSkpURWxVV1NCQlRrUWdSa2xVVGtWVFV5QkdUMUlnUVNCUVFWSlVTVU5WVEVGU0lGQlZVbEJQVTBVZ1FWSkZYRzRnS2lCRVNWTkRURUZKVFVWRUxpQkpUaUJPVHlCRlZrVk9WQ0JUU0VGTVRDQlVTRVVnUTA5UVdWSkpSMGhVSUVoUFRFUkZVaUJQVWlCRFQwNVVVa2xDVlZSUFVsTWdRa1VnVEVsQlFreEZYRzRnS2lCR1QxSWdRVTVaSUVSSlVrVkRWQ3dnU1U1RVNWSkZRMVFzSUVsT1EwbEVSVTVVUVV3c0lGTlFSVU5KUVV3c0lFVllSVTFRVEVGU1dTd2dUMUlnUTA5T1UwVlJWVVZPVkVsQlRGeHVJQ29nUkVGTlFVZEZVeUFvU1U1RFRGVkVTVTVITENCQ1ZWUWdUazlVSUV4SlRVbFVSVVFnVkU4c0lGQlNUME5WVWtWTlJVNVVJRTlHSUZOVlFsTlVTVlJWVkVVZ1IwOVBSRk1nVDFKY2JpQXFJRk5GVWxaSlEwVlRPeUJNVDFOVElFOUdJRlZUUlN3Z1JFRlVRU3dnVDFJZ1VGSlBSa2xVVXpzZ1QxSWdRbFZUU1U1RlUxTWdTVTVVUlZKU1ZWQlVTVTlPS1NCSVQxZEZWa1ZTWEc0Z0tpQkRRVlZUUlVRZ1FVNUVJRTlPSUVGT1dTQlVTRVZQVWxrZ1QwWWdURWxCUWtsTVNWUlpMQ0JYU0VWVVNFVlNJRWxPSUVOUFRsUlNRVU5VTENCVFZGSkpRMVFnVEVsQlFrbE1TVlJaTEZ4dUlDb2dUMUlnVkU5U1ZDQW9TVTVEVEZWRVNVNUhJRTVGUjB4SlIwVk9RMFVnVDFJZ1QxUklSVkpYU1ZORktTQkJVa2xUU1U1SElFbE9JRUZPV1NCWFFWa2dUMVZVSUU5R0lGUklSU0JWVTBWY2JpQXFJRTlHSUZSSVNWTWdVMDlHVkZkQlVrVXNJRVZXUlU0Z1NVWWdRVVJXU1ZORlJDQlBSaUJVU0VVZ1VFOVRVMGxDU1V4SlZGa2dUMFlnVTFWRFNDQkVRVTFCUjBVdVhHNGdLaTljYmx4dWFXMXdiM0owSUNvZ1lYTWdhR1ZoY0NCbWNtOXRJQ2N1TDJobFlYQW5PMXh1YVcxd2IzSjBJQ29nWVhNZ2JXRjBjbWw0SUdaeWIyMGdKeTR2YldGMGNtbDRKenRjYm1sdGNHOXlkQ0FxSUdGeklHNXVSR1Z6WTJWdWRDQm1jbTl0SUNjdUwyNXVYMlJsYzJObGJuUW5PMXh1YVcxd2IzSjBJQ29nWVhNZ2RISmxaU0JtY205dElDY3VMM1J5WldVbk8xeHVhVzF3YjNKMElDb2dZWE1nZFhScGJITWdabkp2YlNBbkxpOTFkR2xzY3ljN1hHNXBiWEJ2Y25RZ1RFMGdabkp2YlNBbmJXd3RiR1YyWlc1aVpYSm5MVzFoY25GMVlYSmtkQ2M3WEc1Y2JtVjRjRzl5ZENCMGVYQmxJRVJwYzNSaGJtTmxSbTRnUFNBb2VEb2diblZ0WW1WeUxDQjVPaUJ1ZFcxaVpYSXBJRDArSUc1MWJXSmxjanRjYm1WNGNHOXlkQ0IwZVhCbElGSmhibVJ2YlVadUlEMGdLQ2tnUFQ0Z2JuVnRZbVZ5TzF4dVpYaHdiM0owSUhSNWNHVWdSWEJ2WTJoRFlXeHNZbUZqYXlBOUlDaGxjRzlqYURvZ2JuVnRZbVZ5S1NBOVBpQmliMjlzWldGdUlId2dkbTlwWkR0Y2JtVjRjRzl5ZENCMGVYQmxJRlpsWTNSdmNpQTlJRzUxYldKbGNsdGRPMXh1Wlhod2IzSjBJSFI1Y0dVZ1ZtVmpkRzl5Y3lBOUlGWmxZM1J2Y2x0ZE8xeHVaWGh3YjNKMElHTnZibk4wSUdWdWRXMGdWR0Z5WjJWMFRXVjBjbWxqSUh0Y2JpQWdZMkYwWldkdmNtbGpZV3dnUFNBblkyRjBaV2R2Y21sallXd25MRnh1SUNCc01TQTlJQ2RzTVNjc1hHNGdJR3d5SUQwZ0oyd3lKeXhjYm4xY2JseHVZMjl1YzNRZ1UwMVBUMVJJWDB0ZlZFOU1SVkpCVGtORklEMGdNV1V0TlR0Y2JtTnZibk4wSUUxSlRsOUxYMFJKVTFSZlUwTkJURVVnUFNBeFpTMHpPMXh1WEc1bGVIQnZjblFnYVc1MFpYSm1ZV05sSUZWTlFWQlFZWEpoYldWMFpYSnpJSHRjYmlBZ0x5b3FYRzRnSUNBcUlGUm9aU0JrYVhOMFlXNWpaU0JtZFc1amRHbHZiaUIzYVhSb0lIZG9hV05vSUhSdklHRnpjMlZ6Y3lCdVpXRnlaWE4wSUc1bGFXZG9ZbTl5Y3l3Z1pHVm1ZWFZzZEhOY2JpQWdJQ29nZEc4Z1pYVmpiR2xrWldGdUlHUnBjM1JoYm1ObExseHVJQ0FnS2k5Y2JpQWdaR2x6ZEdGdVkyVkdiajg2SUVScGMzUmhibU5sUm00N1hHNGdJQzhxS2x4dUlDQWdLaUJVYUdVZ2FXNXBkR2xoYkNCc1pXRnlibWx1WnlCeVlYUmxJR1p2Y2lCMGFHVWdaVzFpWldSa2FXNW5JRzl3ZEdsdGFYcGhkR2x2Ymk1Y2JpQWdJQ292WEc0Z0lHeGxZWEp1YVc1blVtRjBaVDg2SUc1MWJXSmxjanRjYmlBZ0x5b3FYRzRnSUNBcUlGUm9aU0JzYjJOaGJDQmpiMjV1WldOMGFYWnBkSGtnY21WeGRXbHlaV1FnTFMwZ2FTNWxMaUIwYUdVZ2JuVnRZbVZ5SUc5bUlHNWxZWEpsYzNSY2JpQWdJQ29nYm1WcFoyaGliM0p6SUhSb1lYUWdjMmh2ZFd4a0lHSmxJR0Z6YzNWdFpXUWdkRzhnWW1VZ1kyOXVibVZqZEdWa0lHRjBJR0VnYkc5allXd2diR1YyWld3dVhHNGdJQ0FxSUZSb1pTQm9hV2RvWlhJZ2RHaHBjeUIyWVd4MVpTQjBhR1VnYlc5eVpTQmpiMjV1WldOMFpXUWdkR2hsSUcxaGJtbG1iMnhrSUdKbFkyOXRaWE5jYmlBZ0lDb2diRzlqWVd4c2VTNGdTVzRnY0hKaFkzUnBZMlVnZEdocGN5QnphRzkxYkdRZ1ltVWdibTkwSUcxdmNtVWdkR2hoYmlCMGFHVWdiRzlqWVd3Z2FXNTBjbWx1YzJsalhHNGdJQ0FxSUdScGJXVnVjMmx2YmlCdlppQjBhR1VnYldGdWFXWnZiR1F1WEc0Z0lDQXFMMXh1SUNCc2IyTmhiRU52Ym01bFkzUnBkbWwwZVQ4NklHNTFiV0psY2p0Y2JpQWdMeW9xWEc0Z0lDQXFJRlJvWlNCbFptWmxZM1JwZG1VZ2JXbHVhVzExYlNCa2FYTjBZVzVqWlNCaVpYUjNaV1Z1SUdWdFltVmtaR1ZrSUhCdmFXNTBjeTRnVTIxaGJHeGxjaUIyWVd4MVpYTmNiaUFnSUNvZ2QybHNiQ0J5WlhOMWJIUWdhVzRnWVNCdGIzSmxJR05zZFhOMFpYSmxaQzlqYkhWdGNHVmtJR1Z0WW1Wa1pHbHVaeUIzYUdWeVpTQnVaV0Z5WW5rZ2NHOXBiblJ6WEc0Z0lDQXFJRzl1SUhSb1pTQnRZVzVwWm05c1pDQmhjbVVnWkhKaGQyNGdZMnh2YzJWeUlIUnZaMlYwYUdWeUxDQjNhR2xzWlNCc1lYSm5aWElnZG1Gc2RXVnpJSGRwYkd4Y2JpQWdJQ29nY21WemRXeDBJRzl1SUdFZ2JXOXlaU0JsZG1WdUlHUnBjM0JsY25OaGJDQnZaaUJ3YjJsdWRITXVJRlJvWlNCMllXeDFaU0J6YUc5MWJHUWdZbVVnYzJWMFhHNGdJQ0FxSUhKbGJHRjBhWFpsSUhSdklIUm9aU0JnWUhOd2NtVmhaR0JnSUhaaGJIVmxMQ0IzYUdsamFDQmtaWFJsY20xcGJtVnpJSFJvWlNCelkyRnNaU0JoZENCM2FHbGphRnh1SUNBZ0tpQmxiV0psWkdSbFpDQndiMmx1ZEhNZ2QybHNiQ0JpWlNCemNISmxZV1FnYjNWMExseHVJQ0FnS2k5Y2JpQWdiV2x1UkdsemREODZJRzUxYldKbGNqdGNiaUFnTHlvcVhHNGdJQ0FxSUZSb1pTQmthVzFsYm5OcGIyNGdiMllnZEdobElITndZV05sSUhSdklHVnRZbVZrSUdsdWRHOHVJRlJvYVhNZ1pHVm1ZWFZzZEhNZ2RHOGdNaUIwYjF4dUlDQWdLaUJ3Y205MmFXUmxJR1ZoYzNrZ2RtbHpkV0ZzYVhwaGRHbHZiaXdnWW5WMElHTmhiaUJ5WldGemIyNWhZbXg1SUdKbElITmxkQ0IwYnlCaGJubGNiaUFnSUNvZ2FXNTBaV2RsY2lCMllXeDFaU0JwYmlCMGFHVWdjbUZ1WjJVZ01pQjBieUF4TURBdVhHNGdJQ0FxTDF4dUlDQnVRMjl0Y0c5dVpXNTBjejg2SUc1MWJXSmxjanRjYmlBZ0x5b3FYRzRnSUNBcUlGUm9aU0J1ZFcxaVpYSWdiMllnZEhKaGFXNXBibWNnWlhCdlkyaHpJSFJ2SUdKbElIVnpaV1FnYVc0Z2IzQjBhVzFwZW1sdVp5QjBhR1ZjYmlBZ0lDb2diRzkzSUdScGJXVnVjMmx2Ym1Gc0lHVnRZbVZrWkdsdVp5NGdUR0Z5WjJWeUlIWmhiSFZsY3lCeVpYTjFiSFFnYVc0Z2JXOXlaU0JoWTJOMWNtRjBaVnh1SUNBZ0tpQmxiV0psWkdScGJtZHpMaUJKWmlCT2IyNWxJR2x6SUhOd1pXTnBabWxsWkNCaElIWmhiSFZsSUhkcGJHd2dZbVVnYzJWc1pXTjBaV1FnWW1GelpXUWdiMjVjYmlBZ0lDb2dkR2hsSUhOcGVtVWdiMllnZEdobElHbHVjSFYwSUdSaGRHRnpaWFFnS0RJd01DQm1iM0lnYkdGeVoyVWdaR0YwWVhObGRITXNJRFV3TUNCbWIzSWdjMjFoYkd3cExseHVJQ0FnS2k5Y2JpQWdia1Z3YjJOb2N6ODZJRzUxYldKbGNqdGNiaUFnTHlvcVhHNGdJQ0FxSUZSb1pTQnphWHBsSUc5bUlHeHZZMkZzSUc1bGFXZG9ZbTl5YUc5dlpDQW9hVzRnZEdWeWJYTWdiMllnYm5WdFltVnlJRzltSUc1bGFXZG9ZbTl5YVc1blhHNGdJQ0FxSUhOaGJYQnNaU0J3YjJsdWRITXBJSFZ6WldRZ1ptOXlJRzFoYm1sbWIyeGtJR0Z3Y0hKdmVHbHRZWFJwYjI0dUlFeGhjbWRsY2lCMllXeDFaWE5jYmlBZ0lDb2djbVZ6ZFd4MElHbHVJRzF2Y21VZ1oyeHZZbUZzSUhacFpYZHpJRzltSUhSb1pTQnRZVzVwWm05c1pDd2dkMmhwYkdVZ2MyMWhiR3hsY2x4dUlDQWdLaUIyWVd4MVpYTWdjbVZ6ZFd4MElHbHVJRzF2Y21VZ2JHOWpZV3dnWkdGMFlTQmlaV2x1WnlCd2NtVnpaWEoyWldRdUlFbHVJR2RsYm1WeVlXeGNiaUFnSUNvZ2RtRnNkV1Z6SUhOb2IzVnNaQ0JpWlNCcGJpQjBhR1VnY21GdVoyVWdNaUIwYnlBeE1EQXVYRzRnSUNBcUwxeHVJQ0J1VG1WcFoyaGliM0p6UHpvZ2JuVnRZbVZ5TzF4dUlDQXZLaXBjYmlBZ0lDb2dWR2hsSUc1MWJXSmxjaUJ2WmlCdVpXZGhkR2wyWlNCellXMXdiR1Z6SUhSdklITmxiR1ZqZENCd1pYSWdjRzl6YVhScGRtVWdjMkZ0Y0d4bFhHNGdJQ0FxSUdsdUlIUm9aU0J2Y0hScGJXbDZZWFJwYjI0Z2NISnZZMlZ6Y3k0Z1NXNWpjbVZoYzJsdVp5QjBhR2x6SUhaaGJIVmxJSGRwYkd3Z2NtVnpkV3gwWEc0Z0lDQXFJR2x1SUdkeVpXRjBaWElnY21Wd2RXeHphWFpsSUdadmNtTmxJR0psYVc1bklHRndjR3hwWldRc0lHZHlaV0YwWlhJZ2IzQjBhVzFwZW1GMGFXOXVYRzRnSUNBcUlHTnZjM1FzSUdKMWRDQnpiR2xuYUhSc2VTQnRiM0psSUdGalkzVnlZV041TGx4dUlDQWdLaTljYmlBZ2JtVm5ZWFJwZG1WVFlXMXdiR1ZTWVhSbFB6b2diblZ0WW1WeU8xeHVJQ0F2S2lwY2JpQWdJQ29nVjJWcFoyaDBhVzVuSUdGd2NHeHBaV1FnZEc4Z2JtVm5ZWFJwZG1VZ2MyRnRjR3hsY3lCcGJpQnNiM2NnWkdsdFpXNXphVzl1WVd3Z1pXMWlaV1JrYVc1blhHNGdJQ0FxSUc5d2RHbHRhWHBoZEdsdmJpNGdWbUZzZFdWeklHaHBaMmhsY2lCMGFHRnVJRzl1WlNCM2FXeHNJSEpsYzNWc2RDQnBiaUJuY21WaGRHVnlJSGRsYVdkb2RGeHVJQ0FnS2lCaVpXbHVaeUJuYVhabGJpQjBieUJ1WldkaGRHbDJaU0J6WVcxd2JHVnpMbHh1SUNBZ0tpOWNiaUFnY21Wd2RXeHphVzl1VTNSeVpXNW5kR2cvT2lCdWRXMWlaWEk3WEc0Z0lDOHFLbHh1SUNBZ0tpQlVhR1VnY0hObGRXUnZMWEpoYm1SdmJTQnVkVzFpWlhJZ1oyVnVaWEpoZEc5eUlIVnpaV1FnWW5rZ2RHaGxJSE4wYjJOb1lYTjBhV01nY0dGeWRITWdiMllnZEdobFhHNGdJQ0FxSUdGc1oyOXlhWFJvYlM1Y2JpQWdJQ292WEc0Z0lISmhibVJ2YlQ4NklGSmhibVJ2YlVadU8xeHVJQ0F2S2lwY2JpQWdJQ29nU1c1MFpYSndiMnhoZEdVZ1ltVjBkMlZsYmlBb1puVjZlbmtwSUhWdWFXOXVJR0Z1WkNCcGJuUmxjbk5sWTNScGIyNGdZWE1nZEdobElITmxkQ0J2Y0dWeVlYUnBiMjVjYmlBZ0lDb2dkWE5sWkNCMGJ5QmpiMjFpYVc1bElHeHZZMkZzSUdaMWVucDVJSE5wYlhCc2FXTnBZV3dnYzJWMGN5QjBieUJ2WW5SaGFXNGdZU0JuYkc5aVlXd2dablY2ZW5sY2JpQWdJQ29nYzJsdGNHeHBZMmxoYkNCelpYUnpMaUJDYjNSb0lHWjFlbnA1SUhObGRDQnZjR1Z5WVhScGIyNXpJSFZ6WlNCMGFHVWdjSEp2WkhWamRDQjBMVzV2Y20wdVhHNGdJQ0FxSUZSb1pTQjJZV3gxWlNCdlppQjBhR2x6SUhCaGNtRnRaWFJsY2lCemFHOTFiR1FnWW1VZ1ltVjBkMlZsYmlBd0xqQWdZVzVrSURFdU1Ec2dZU0IyWVd4MVpTQnZabHh1SUNBZ0tpQXhMakFnZDJsc2JDQjFjMlVnWVNCd2RYSmxJR1oxZW5wNUlIVnVhVzl1TENCM2FHbHNaU0F3TGpBZ2QybHNiQ0IxYzJVZ1lTQndkWEpsSUdaMWVucDVYRzRnSUNBcUlHbHVkR1Z5YzJWamRHbHZiaTVjYmlBZ0lDb3ZYRzRnSUhObGRFOXdUV2w0VW1GMGFXOC9PaUJ1ZFcxaVpYSTdYRzRnSUM4cUtseHVJQ0FnS2lCVWFHVWdaV1ptWldOMGFYWmxJSE5qWVd4bElHOW1JR1Z0WW1Wa1pHVmtJSEJ2YVc1MGN5NGdTVzRnWTI5dFltbHVZWFJwYjI0Z2QybDBhQ0JnWUcxcGJsOWthWE4wWUdCY2JpQWdJQ29nZEdocGN5QmtaWFJsY20xcGJtVnpJR2h2ZHlCamJIVnpkR1Z5WldRdlkyeDFiWEJsWkNCMGFHVWdaVzFpWldSa1pXUWdjRzlwYm5SeklHRnlaUzVjYmlBZ0lDb3ZYRzRnSUhOd2NtVmhaRDg2SUc1MWJXSmxjanRjYmlBZ0x5b3FYRzRnSUNBcUlFWnZjaUIwY21GdWMyWnZjbTBnYjNCbGNtRjBhVzl1Y3lBb1pXMWlaV1JrYVc1bklHNWxkeUJ3YjJsdWRITWdkWE5wYm1jZ1lTQjBjbUZwYm1Wa0lHMXZaR1ZzS1Z4dUlDQWdLaUIwYUdseklIZHBiR3dnWTI5dWRISnZiQ0JvYjNjZ1lXZG5jbVZ6YzJsMlpXeDVJSFJ2SUhObFlYSmphQ0JtYjNJZ2JtVmhjbVZ6ZENCdVpXbG5hR0p2Y25NdVhHNGdJQ0FxSUV4aGNtZGxjaUIyWVd4MVpYTWdkMmxzYkNCeVpYTjFiSFFnYVc0Z2MyeHZkMlZ5SUhCbGNtWnZjbTFoYm1ObElHSjFkQ0J0YjNKbElHRmpZM1Z5WVhSbFhHNGdJQ0FxSUc1bFlYSmxjM1FnYm1WcFoyaGliM0lnWlhaaGJIVmhkR2x2Ymk1Y2JpQWdJQ292WEc0Z0lIUnlZVzV6Wm05eWJWRjFaWFZsVTJsNlpUODZJRzUxYldKbGNqdGNibjFjYmx4dVpYaHdiM0owSUdsdWRHVnlabUZqWlNCVlRVRlFVM1Z3WlhKMmFYTmxaRkJoY21GdGN5QjdYRzRnSUM4cUtseHVJQ0FnS2lCVWFHVWdiV1YwY21saklIVnpaV1FnZEc4Z2JXVmhjM1Z5WlNCa2FYTjBZVzVqWlNCbWIzSWdZU0IwWVhKblpYUWdZWEp5WVhrZ2FYTWdkWE5wYm1jZ2MzVndaWEoyYVhObFpGeHVJQ0FnS2lCa2FXMWxibk5wYjI0Z2NtVmtkV04wYVc5dUxpQkNlU0JrWldaaGRXeDBJSFJvYVhNZ2FYTWdKMk5oZEdWbmIzSnBZMkZzSnlCM2FHbGphQ0IzYVd4c0lHMWxZWE4xY21WY2JpQWdJQ29nWkdsemRHRnVZMlVnYVc0Z2RHVnliWE1nYjJZZ2QyaGxkR2hsY2lCallYUmxaMjl5YVdWeklHMWhkR05vSUc5eUlHRnlaU0JrYVdabVpYSmxiblF1SUVaMWNuUm9aWEp0YjNKbExGeHVJQ0FnS2lCcFppQnpaVzFwTFhOMWNHVnlkbWx6WldRZ2FYTWdjbVZ4ZFdseVpXUWdkR0Z5WjJWMElIWmhiSFZsY3lCdlppQXRNU0IzYVd4c0lHSmxJSFJ5WldGMFpXUWdZWE5jYmlBZ0lDb2dkVzVzWVdKbGJHeGxaQ0IxYm1SbGNpQjBhR1VnSjJOaGRHVm5iM0pwWTJGc0p5QnRaWFJ5YVdNdUlFbG1JSFJvWlNCMFlYSm5aWFFnWVhKeVlYa2dkR0ZyWlhOY2JpQWdJQ29nWTI5dWRHbHVkVzkxY3lCMllXeDFaWE1nS0dVdVp5NGdabTl5SUdFZ2NtVm5jbVZ6YzJsdmJpQndjbTlpYkdWdEtTQjBhR1Z1SUcxbGRISnBZeUJ2WmlBbmJERW5YRzRnSUNBcUlHOXlJQ2RzTWljZ2FYTWdjSEp2WW1GaWJIa2diVzl5WlNCaGNIQnliM0J5YVdGMFpTNWNiaUFnSUNvdlhHNGdJSFJoY21kbGRFMWxkSEpwWXo4NklGUmhjbWRsZEUxbGRISnBZenRjYmlBZ0x5b3FYRzRnSUNBcUlGZGxhV2RvZEdsdVp5Qm1ZV04wYjNJZ1ltVjBkMlZsYmlCa1lYUmhJSFJ2Y0c5c2IyZDVJR0Z1WkNCMFlYSm5aWFFnZEc5d2IyeHZaM2t1SUVFZ2RtRnNkV1VnYjJaY2JpQWdJQ29nTUM0d0lIZGxhV2RvZEhNZ1pXNTBhWEpsYkhrZ2IyNGdaR0YwWVN3Z1lTQjJZV3gxWlNCdlppQXhMakFnZDJWcFoyaDBjeUJsYm5ScGNtVnNlU0J2YmlCMFlYSm5aWFF1WEc0Z0lDQXFJRlJvWlNCa1pXWmhkV3gwSUc5bUlEQXVOU0JpWVd4aGJtTmxjeUIwYUdVZ2QyVnBaMmgwYVc1bklHVnhkV0ZzYkhrZ1ltVjBkMlZsYmlCa1lYUmhJR0Z1WkNCMFlYSm5aWFF1WEc0Z0lDQXFMMXh1SUNCMFlYSm5aWFJYWldsbmFIUS9PaUJ1ZFcxaVpYSTdYRzRnSUM4cUtseHVJQ0FnS2lCVWFHVWdiblZ0WW1WeUlHOW1JRzVsWVhKbGMzUWdibVZwWjJoaWIzSnpJSFJ2SUhWelpTQjBieUJqYjI1emRISjFZM1FnZEdobElIUmhjbWRsZENCemFXMXdiR05wWVd4Y2JpQWdJQ29nYzJWMExpQkVaV1poZFd4MGN5QjBieUIwYUdVZ1lHNWxZWEpsYzNST1pXbG5hR0p2Y25OZ0lIQmhjbUZ0WlhSbGNpNWNiaUFnSUNvdlhHNGdJSFJoY21kbGRFNU9aV2xuYUdKdmNuTS9PaUJ1ZFcxaVpYSTdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1ZVMUJVQ0J3Y205cVpXTjBhVzl1SUhONWMzUmxiU3dnWW1GelpXUWdiMjRnZEdobElIQjVkR2h2YmlCcGJYQnNaVzFsYm5SaGRHbHZiaUJtY205dElFMWpTVzV1WlhNc0lFd3NYRzRnS2lCSVpXRnNlU3dnU2l3Z1ZVMUJVRG9nVlc1cFptOXliU0JOWVc1cFptOXNaQ0JCY0hCeWIzaHBiV0YwYVc5dUlHRnVaQ0JRY205cVpXTjBhVzl1SUdadmNpQkVhVzFsYm5OcGIyNWNiaUFxSUZKbFpIVmpkR2x2YmlBb2FIUjBjSE02THk5bmFYUm9kV0l1WTI5dEwyeHRZMmx1Ym1WekwzVnRZWEFwTGx4dUlDcGNiaUFxSUZSb2FYTWdhVzF3YkdWdFpXNTBZWFJwYjI0Z1pHbG1abVZ5Y3lCcGJpQmhJR1psZHlCeVpXZGhjbVJ6T2x4dUlDb2dZU2tnVkdobElHbHVhWFJwWVd4cGVtRjBhVzl1SUc5bUlIUm9aU0JsYldKbFpHUnBibWNnWm05eUlHOXdkR2x0YVhwaGRHbHZiaUJwY3lCdWIzUWdZMjl0Y0hWMFpXUWdkWE5wYm1kY2JpQXFJQ0FnSUdFZ2MzQmxZM1J5WVd3Z2JXVjBhRzlrTENCeVlYUm9aWElnYVhRZ2FYTWdhVzVwZEdsaGJHbDZaV1FnY21GdVpHOXRiSGt1SUZSb2FYTWdZWFp2YVdSeklITnZiV1ZjYmlBcUlDQWdJR052YlhCMWRHRjBhVzl1WVd4c2VTQnBiblJsYm5OcGRtVWdiV0YwY21sNElHVnBaMlZ1SUdOdmJYQjFkR0YwYVc5dWN5QjBhR0YwSUdGeVpXNG5kQ0JsWVhOcGJIbGNiaUFxSUNBZ0lIQnZjblJsWkNCMGJ5QktZWFpoVTJOeWFYQjBMbHh1SUNvZ1lpa2dRU0JzYjNRZ2IyWWdYQ0psZUhSeVlWd2lJR1oxYm1OMGFXOXVZV3hwZEhrZ2FHRnpJR0psWlc0Z2IyMXBkSFJsWkNCbWNtOXRJSFJvYVhNZ2FXMXdiR1Z0Wlc1MFlYUnBiMjRzWEc0Z0tpQWdJQ0J0YjNOMElHNXZkR0ZpYkhrZ1lTQm5jbVZoZENCa1pXRnNJRzltSUdGc2RHVnlibUYwWlNCa2FYTjBZVzVqWlNCbWRXNWpkR2x2Ym5NdVhHNGdLbHh1SUNvZ1ZHaHBjeUJwYlhCc1pXMWxiblJoZEdsdmJpQndjbTkyYVdSbGN5QjBhSEpsWlNCdFpYUm9iMlJ6SUc5bUlISmxaSFZqYVc1bklHUnBiV1Z1YzJsdmJtRnNhWFI1T2x4dUlDb2dNU2tnWm1sME9pQm1hWFFnZEdobElHUmhkR0VnYzNsdVkyaHliMjV2ZFhOc2VWeHVJQ29nTWlrZ1ptbDBRWE41Ym1NNklHWnBkQ0IwYUdVZ1pHRjBZU0JoYzNsdVkyaHliMjV2ZFhOc2VTd2dkMmwwYUNCaElHTmhiR3hpWVdOcklHWjFibU4wYVc5dUlIQnliM1pwWkdWa1hHNGdLaUFnSUNBZ0lIUm9ZWFFnYVhNZ2FXNTJiMnRsWkNCdmJpQmxZV05vSUc5d2RHbHRhWHBoZEdsdmJpQnpkR1Z3TGx4dUlDb2dNeWtnYVc1cGRHbGhiR2w2WlVacGRDQXZJSE4wWlhBNklHMWhiblZoYkd4NUlHbHVhWFJwWVd4cGVtVWdkR2hsSUdGc1oyOXlhWFJvYlNCMGFHVnVJR1Y0Y0d4cFkzUnNlVnh1SUNvZ0lDQWdJQ0J6ZEdWd0lIUm9jbTkxWjJnZ1pXRmphQ0JsY0c5amFDQnZaaUIwYUdVZ1UwZEVJRzl3ZEdsdGFYcGhkR2x2Ymx4dUlDb3ZYRzVsZUhCdmNuUWdZMnhoYzNNZ1ZVMUJVQ0I3WEc0Z0lIQnlhWFpoZEdVZ2JHVmhjbTVwYm1kU1lYUmxJRDBnTVM0d08xeHVJQ0J3Y21sMllYUmxJR3h2WTJGc1EyOXVibVZqZEdsMmFYUjVJRDBnTVM0d08xeHVJQ0J3Y21sMllYUmxJRzFwYmtScGMzUWdQU0F3TGpFN1hHNGdJSEJ5YVhaaGRHVWdia052YlhCdmJtVnVkSE1nUFNBeU8xeHVJQ0J3Y21sMllYUmxJRzVGY0c5amFITWdQU0F3TzF4dUlDQndjbWwyWVhSbElHNU9aV2xuYUdKdmNuTWdQU0F4TlR0Y2JpQWdjSEpwZG1GMFpTQnVaV2RoZEdsMlpWTmhiWEJzWlZKaGRHVWdQU0ExTzF4dUlDQndjbWwyWVhSbElISmhibVJ2YlNBOUlFMWhkR2d1Y21GdVpHOXRPMXh1SUNCd2NtbDJZWFJsSUhKbGNIVnNjMmx2YmxOMGNtVnVaM1JvSUQwZ01TNHdPMXh1SUNCd2NtbDJZWFJsSUhObGRFOXdUV2w0VW1GMGFXOGdQU0F4TGpBN1hHNGdJSEJ5YVhaaGRHVWdjM0J5WldGa0lEMGdNUzR3TzF4dUlDQndjbWwyWVhSbElIUnlZVzV6Wm05eWJWRjFaWFZsVTJsNlpTQTlJRFF1TUR0Y2JseHVJQ0F2THlCVGRYQmxjblpwYzJWa0lIQnliMnBsWTNScGIyNGdjR0Z5WVcxelhHNGdJSEJ5YVhaaGRHVWdkR0Z5WjJWMFRXVjBjbWxqSUQwZ1ZHRnlaMlYwVFdWMGNtbGpMbU5oZEdWbmIzSnBZMkZzTzF4dUlDQndjbWwyWVhSbElIUmhjbWRsZEZkbGFXZG9kQ0E5SURBdU5UdGNiaUFnY0hKcGRtRjBaU0IwWVhKblpYUk9UbVZwWjJoaWIzSnpJRDBnTVRVN1hHNWNiaUFnY0hKcGRtRjBaU0JrYVhOMFlXNWpaVVp1T2lCRWFYTjBZVzVqWlVadUlEMGdiblZ0WlhKcFl6dGNibHh1SUNBdkx5QkxUazRnYzNSaGRHVWdLR05oYmlCaVpTQndjbVZqYjIxd2RYUmxaQ0JoYm1RZ2MzVndjR3hwWldRZ2RtbGhJR2x1YVhScFlXeHBlbVZHYVhRcFhHNGdJSEJ5YVhaaGRHVWdhMjV1U1c1a2FXTmxjejg2SUc1MWJXSmxjbHRkVzEwN1hHNGdJSEJ5YVhaaGRHVWdhMjV1UkdsemRHRnVZMlZ6UHpvZ2JuVnRZbVZ5VzExYlhUdGNibHh1SUNBdkx5QkpiblJsY201aGJDQm5jbUZ3YUNCamIyNXVaV04wYVhacGRIa2djbVZ3Y21WelpXNTBZWFJwYjI1Y2JpQWdjSEpwZG1GMFpTQm5jbUZ3YUNFNklHMWhkSEpwZUM1VGNHRnljMlZOWVhSeWFYZzdYRzRnSUhCeWFYWmhkR1VnV0NFNklGWmxZM1J2Y2p0Y2JpQWdjSEpwZG1GMFpTQnBjMGx1YVhScFlXeHBlbVZrSUQwZ1ptRnNjMlU3WEc0Z0lIQnlhWFpoZEdVZ2NuQkdiM0psYzNRNklIUnlaV1V1Um14aGRGUnlaV1ZiWFNBOUlGdGRPMXh1SUNCd2NtbDJZWFJsSUdsdWFYUkdjbTl0VW1GdVpHOXRJVG9nYm01RVpYTmpaVzUwTGtsdWFYUkdjbTl0VW1GdVpHOXRSbTQ3WEc0Z0lIQnlhWFpoZEdVZ2FXNXBkRVp5YjIxVWNtVmxJVG9nYm01RVpYTmpaVzUwTGtsdWFYUkdjbTl0VkhKbFpVWnVPMXh1SUNCd2NtbDJZWFJsSUhObFlYSmphQ0U2SUc1dVJHVnpZMlZ1ZEM1VFpXRnlZMmhHYmp0Y2JpQWdjSEpwZG1GMFpTQnpaV0Z5WTJoSGNtRndhQ0U2SUcxaGRISnBlQzVUY0dGeWMyVk5ZWFJ5YVhnN1hHNWNiaUFnTHk4Z1UzVndaWEoyYVhObFpDQndjbTlxWldOMGFXOXVJR3hoWW1Wc2N5QXZJSFJoY21kbGRITmNiaUFnY0hKcGRtRjBaU0JaUHpvZ2JuVnRZbVZ5VzEwN1hHNWNiaUFnTHk4Z1VISnZhbVZqZEdWa0lHVnRZbVZrWkdsdVoxeHVJQ0J3Y21sMllYUmxJR1Z0WW1Wa1pHbHVaem9nYm5WdFltVnlXMTFiWFNBOUlGdGRPMXh1SUNCd2NtbDJZWFJsSUc5d2RHbHRhWHBoZEdsdmJsTjBZWFJsSUQwZ2JtVjNJRTl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxLQ2s3WEc1Y2JseHVJQ0JuWlhRZ2JtVnBaMmhpYjNKektDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCMGFHbHpMbTVPWldsbmFHSnZjbk03WEc0Z0lIMWNiaUFnWTI5dWMzUnlkV04wYjNJb2NHRnlZVzF6T2lCVlRVRlFVR0Z5WVcxbGRHVnljeUE5SUh0OUtTQjdYRzRnSUNBZ1kyOXVjM1FnYzJWMFVHRnlZVzBnUFNBb2EyVjVPaUJyWlhsdlppQlZUVUZRVUdGeVlXMWxkR1Z5Y3lrZ1BUNGdlMXh1SUNBZ0lDQWdMeTlBZEhNdGFXZHViM0psWEc0Z0lDQWdJQ0JwWmlBb2NHRnlZVzF6VzJ0bGVWMGdJVDA5SUhWdVpHVm1hVzVsWkNrZ2RHaHBjMXRyWlhsZElEMGdjR0Z5WVcxelcydGxlVjA3WEc0Z0lDQWdmVHRjYmx4dUlDQWdJSE5sZEZCaGNtRnRLQ2RrYVhOMFlXNWpaVVp1SnlrN1hHNGdJQ0FnYzJWMFVHRnlZVzBvSjJ4bFlYSnVhVzVuVW1GMFpTY3BPMXh1SUNBZ0lITmxkRkJoY21GdEtDZHNiMk5oYkVOdmJtNWxZM1JwZG1sMGVTY3BPMXh1SUNBZ0lITmxkRkJoY21GdEtDZHRhVzVFYVhOMEp5azdYRzRnSUNBZ2MyVjBVR0Z5WVcwb0oyNURiMjF3YjI1bGJuUnpKeWs3WEc0Z0lDQWdjMlYwVUdGeVlXMG9KMjVGY0c5amFITW5LVHRjYmlBZ0lDQnpaWFJRWVhKaGJTZ25iazVsYVdkb1ltOXljeWNwTzF4dUlDQWdJSE5sZEZCaGNtRnRLQ2R1WldkaGRHbDJaVk5oYlhCc1pWSmhkR1VuS1R0Y2JpQWdJQ0J6WlhSUVlYSmhiU2duY21GdVpHOXRKeWs3WEc0Z0lDQWdjMlYwVUdGeVlXMG9KM0psY0hWc2MybHZibE4wY21WdVozUm9KeWs3WEc0Z0lDQWdjMlYwVUdGeVlXMG9KM05sZEU5d1RXbDRVbUYwYVc4bktUdGNiaUFnSUNCelpYUlFZWEpoYlNnbmMzQnlaV0ZrSnlrN1hHNGdJQ0FnYzJWMFVHRnlZVzBvSjNSeVlXNXpabTl5YlZGMVpYVmxVMmw2WlNjcE8xeHVJQ0FnSUhSb2FYTXVkR0Z5WjJWMFRrNWxhV2RvWW05eWN5QTlJSEJoY21GdGN5NXVUbVZwWjJoaWIzSnpJSHg4SUhSb2FYTXViazVsYVdkb1ltOXljeUI4ZkNCMGFHbHpMblJoY21kbGRFNU9aV2xuYUdKdmNuTTdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUm1sMElIUm9aU0JrWVhSaElIUnZJR0VnY0hKdmFtVmpkR1ZrSUdWdFltVmtaR2x1WnlCemNHRmpaU0J6ZVc1amFISnZibTkxYzJ4NUxseHVJQ0FnS2k5Y2JpQWdabWwwS0ZnNklGWmxZM1J2Y2lrZ2UxeHVJQ0FnSUhSb2FYTXVhVzVwZEdsaGJHbDZaVVpwZENoWUtUdGNiaUFnSUNCMGFHbHpMbTl3ZEdsdGFYcGxUR0Y1YjNWMEtDazdYRzVjYmlBZ0lDQnlaWFIxY200Z2RHaHBjeTVsYldKbFpHUnBibWM3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1JtbDBJSFJvWlNCa1lYUmhJSFJ2SUdFZ2NISnZhbVZqZEdWa0lHVnRZbVZrWkdsdVp5QnpjR0ZqWlNCaGMzbHVZMmh5YjI1dmRYTnNlU3dnZDJsMGFDQmhJR05oYkd4aVlXTnJYRzRnSUNBcUlHWjFibU4wYVc5dUlHbHVkbTlyWldRZ2IyNGdaWFpsY25rZ1pYQnZZMmdnYjJZZ2IzQjBhVzFwZW1GMGFXOXVMbHh1SUNBZ0tpOWNiaUFnWVhONWJtTWdabWwwUVhONWJtTW9YRzRnSUNBZ1dEb2dWbVZqZEc5eUxGeHVJQ0FnSUdOaGJHeGlZV05yT2lBb1pYQnZZMmhPZFcxaVpYSTZJRzUxYldKbGNpa2dQVDRnZG05cFpDQjhJR0p2YjJ4bFlXNGdQU0FvS1NBOVBpQjBjblZsWEc0Z0lDa2dlMXh1SUNBZ0lIUm9hWE11YVc1cGRHbGhiR2w2WlVacGRDaFlLVHRjYmx4dUlDQWdJR0YzWVdsMElIUm9hWE11YjNCMGFXMXBlbVZNWVhsdmRYUkJjM2x1WXloallXeHNZbUZqYXlrN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdVpXMWlaV1JrYVc1bk8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWx1YVhScFlXeHBlbVZ6SUhCaGNtRnRaWFJsY25NZ2JtVmxaR1ZrSUdadmNpQnpkWEJsY25acGMyVmtJSEJ5YjJwbFkzUnBiMjR1WEc0Z0lDQXFMMXh1SUNCelpYUlRkWEJsY25acGMyVmtVSEp2YW1WamRHbHZiaWhaT2lCdWRXMWlaWEpiWFN3Z2NHRnlZVzF6T2lCVlRVRlFVM1Z3WlhKMmFYTmxaRkJoY21GdGN5QTlJSHQ5S1NCN1hHNGdJQ0FnZEdocGN5NVpJRDBnV1R0Y2JpQWdJQ0IwYUdsekxuUmhjbWRsZEUxbGRISnBZeUE5SUhCaGNtRnRjeTUwWVhKblpYUk5aWFJ5YVdNZ2ZId2dkR2hwY3k1MFlYSm5aWFJOWlhSeWFXTTdYRzRnSUNBZ2RHaHBjeTUwWVhKblpYUlhaV2xuYUhRZ1BTQndZWEpoYlhNdWRHRnlaMlYwVjJWcFoyaDBJSHg4SUhSb2FYTXVkR0Z5WjJWMFYyVnBaMmgwTzF4dUlDQWdJSFJvYVhNdWRHRnlaMlYwVGs1bGFXZG9ZbTl5Y3lBOUlIQmhjbUZ0Y3k1MFlYSm5aWFJPVG1WcFoyaGliM0p6SUh4OElIUm9hWE11ZEdGeVoyVjBUazVsYVdkb1ltOXljenRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCSmJtbDBhV0ZzYVhwbGN5QjFiV0Z3SUhkcGRHZ2djSEpsWTI5dGNIVjBaV1FnUzA1T0lHbHVaR2xqWlhNZ1lXNWtJR1JwYzNSaGJtTmxjeTVjYmlBZ0lDb3ZYRzRnSUhObGRGQnlaV052YlhCMWRHVmtTMDVPS0d0dWJrbHVaR2xqWlhNNklHNTFiV0psY2x0ZFcxMHNJR3R1YmtScGMzUmhibU5sY3pvZ2JuVnRZbVZ5VzExYlhTa2dlMXh1SUNBZ0lIUm9hWE11YTI1dVNXNWthV05sY3lBOUlHdHVia2x1WkdsalpYTTdYRzRnSUNBZ2RHaHBjeTVyYm01RWFYTjBZVzVqWlhNZ1BTQnJibTVFYVhOMFlXNWpaWE03WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1NXNXBkR2xoYkdsNlpYTWdabWwwSUdKNUlHTnZiWEIxZEdsdVp5QkxUazRnWVc1a0lHRWdablY2ZW5rZ2MybHRjR3hwWTJsaGJDQnpaWFFzSUdGeklIZGxiR3dnWVhOY2JpQWdJQ29nYVc1cGRHbGhiR2w2YVc1bklIUm9aU0J3Y205cVpXTjBaV1FnWlcxaVpXUmthVzVuY3k0Z1UyVjBjeUIwYUdVZ2IzQjBhVzFwZW1GMGFXOXVJSE4wWVhSbElHRm9aV0ZrWEc0Z0lDQXFJRzltSUc5d2RHbHRhWHBoZEdsdmJpQnpkR1Z3Y3k0Z1VtVjBkWEp1Y3lCMGFHVWdiblZ0WW1WeUlHOW1JR1Z3YjJOb2N5QjBieUJpWlNCMWMyVmtJR1p2Y2lCMGFHVmNiaUFnSUNvZ1UwZEVJRzl3ZEdsdGFYcGhkR2x2Ymk1Y2JpQWdJQ292WEc0Z0lHbHVhWFJwWVd4cGVtVkdhWFFvV0RvZ1ZtVmpkRzl5S1RvZ2JuVnRZbVZ5SUh0Y2JpQWdJQ0JwWmlBb1dDNXNaVzVuZEdnZ1BEMGdkR2hwY3k1dVRtVnBaMmhpYjNKektWeHVJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0dCT2IzUWdaVzV2ZFdkb0lHUmhkR0VnY0c5cGJuUnpJQ2drZTFndWJHVnVaM1JvZlNrZ2RHOGdZM0psWVhSbElHNU9aV2xuYUdKdmNuTTZJQ1I3ZEdocGN5NXVUbVZwWjJoaWIzSnpmUzRnSUVGa1pDQnRiM0psSUdSaGRHRWdjRzlwYm5SeklHOXlJR0ZrYW5WemRDQjBhR1VnWTI5dVptbG5kWEpoZEdsdmJpNWdLVHRjYmx4dVhHNGdJQ0FnTHk4Z1YyVWdaRzl1SjNRZ2JtVmxaQ0IwYnlCeVpXbHVhWFJwWVd4cGVtVWdhV1lnZDJVbmRtVWdZV3h5WldGa2VTQnBibWwwYVdGc2FYcGxaQ0JtYjNJZ2RHaHBjeUJrWVhSaExseHVJQ0FnSUdsbUlDaDBhR2x6TGxnZ1BUMDlJRmdnSmlZZ2RHaHBjeTVwYzBsdWFYUnBZV3hwZW1Wa0tWeHVJQ0FnSUNBZ2NtVjBkWEp1SUhSb2FYTXVaMlYwVGtWd2IyTm9jeWdwTzF4dVhHNWNiaUFnSUNCMGFHbHpMbGdnUFNCWU8xeHVYRzRnSUNBZ2FXWWdLQ0YwYUdsekxtdHVia2x1WkdsalpYTWdKaVlnSVhSb2FYTXVhMjV1UkdsemRHRnVZMlZ6S1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JyYm01U1pYTjFiSFJ6SUQwZ2RHaHBjeTV1WldGeVpYTjBUbVZwWjJoaWIzSnpLRmdwTzF4dUlDQWdJQ0FnZEdocGN5NXJibTVKYm1ScFkyVnpJRDBnYTI1dVVtVnpkV3gwY3k1cmJtNUpibVJwWTJWek8xeHVJQ0FnSUNBZ2RHaHBjeTVyYm01RWFYTjBZVzVqWlhNZ1BTQnJibTVTWlhOMWJIUnpMbXR1YmtScGMzUmhibU5sY3p0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0IwYUdsekxtZHlZWEJvSUQwZ2RHaHBjeTVtZFhwNmVWTnBiWEJzYVdOcFlXeFRaWFFvWEc0Z0lDQWdJQ0JZTEZ4dUlDQWdJQ0FnZEdocGN5NXVUbVZwWjJoaWIzSnpMRnh1SUNBZ0lDQWdkR2hwY3k1elpYUlBjRTFwZUZKaGRHbHZYRzRnSUNBZ0tUdGNibHh1SUNBZ0lDOHZJRk5sZENCMWNDQjBhR1VnYzJWaGNtTm9JR2R5WVhCb0lHWnZjaUJ6ZFdKelpYRjFaVzUwSUhSeVlXNXpabTl5YldGMGFXOXVMbHh1SUNBZ0lIUm9hWE11YldGclpWTmxZWEpqYUVadWN5Z3BPMXh1SUNBZ0lIUm9hWE11YzJWaGNtTm9SM0poY0dnZ1BTQjBhR2x6TG0xaGEyVlRaV0Z5WTJoSGNtRndhQ2hZS1R0Y2JseHVJQ0FnSUM4dklFTm9aV05ySUdsbUlITjFjR1Z5ZG1selpXUWdjSEp2YW1WamRHbHZiaXdnZEdobGJpQmhaR3AxYzNRZ2RHaGxJR2R5WVhCb0xseHVJQ0FnSUhSb2FYTXVjSEp2WTJWemMwZHlZWEJvUm05eVUzVndaWEoyYVhObFpGQnliMnBsWTNScGIyNG9LVHRjYmx4dUlDQWdJR052Ym5OMElIdGNiaUFnSUNBZ0lHaGxZV1FzWEc0Z0lDQWdJQ0IwWVdsc0xGeHVJQ0FnSUNBZ1pYQnZZMmh6VUdWeVUyRnRjR3hsTEZ4dUlDQWdJSDBnUFNCMGFHbHpMbWx1YVhScFlXeHBlbVZUYVcxd2JHbGphV0ZzVTJWMFJXMWlaV1JrYVc1bktDazdYRzVjYmlBZ0lDQXZMeUJUWlhRZ2RHaGxJRzl3ZEdsdGFYcGhkR2x2YmlCeWIzVjBhVzVsSUhOMFlYUmxYRzRnSUNBZ2RHaHBjeTV2Y0hScGJXbDZZWFJwYjI1VGRHRjBaUzVvWldGa0lEMGdhR1ZoWkR0Y2JpQWdJQ0IwYUdsekxtOXdkR2x0YVhwaGRHbHZibE4wWVhSbExuUmhhV3dnUFNCMFlXbHNPMXh1SUNBZ0lIUm9hWE11YjNCMGFXMXBlbUYwYVc5dVUzUmhkR1V1WlhCdlkyaHpVR1Z5VTJGdGNHeGxJRDBnWlhCdlkyaHpVR1Z5VTJGdGNHeGxPMXh1WEc0Z0lDQWdMeThnVG05M0xDQnBibWwwYVdGc2FYcGxJSFJvWlNCdmNIUnBiV2w2WVhScGIyNGdjM1JsY0hOY2JpQWdJQ0IwYUdsekxtbHVhWFJwWVd4cGVtVlBjSFJwYldsNllYUnBiMjRvS1R0Y2JpQWdJQ0IwYUdsekxuQnlaWEJoY21WR2IzSlBjSFJwYldsNllYUnBiMjVNYjI5d0tDazdYRzRnSUNBZ2RHaHBjeTVwYzBsdWFYUnBZV3hwZW1Wa0lEMGdkSEoxWlR0Y2JseHVJQ0FnSUhKbGRIVnliaUIwYUdsekxtZGxkRTVGY0c5amFITW9LVHRjYmlBZ2ZWeHVYRzRnSUhCeWFYWmhkR1VnYldGclpWTmxZWEpqYUVadWN5Z3BJSHRjYmlBZ0lDQmpiMjV6ZENCN2FXNXBkRVp5YjIxVWNtVmxMQ0JwYm1sMFJuSnZiVkpoYm1SdmJYMGdQU0J1YmtSbGMyTmxiblF1YldGclpVbHVhWFJwWVd4cGVtRjBhVzl1Y3loY2JpQWdJQ0FnSUhSb2FYTXVaR2x6ZEdGdVkyVkdibHh1SUNBZ0lDazdYRzRnSUNBZ2RHaHBjeTVwYm1sMFJuSnZiVlJ5WldVZ1BTQnBibWwwUm5KdmJWUnlaV1U3WEc0Z0lDQWdkR2hwY3k1cGJtbDBSbkp2YlZKaGJtUnZiU0E5SUdsdWFYUkdjbTl0VW1GdVpHOXRPMXh1SUNBZ0lIUm9hWE11YzJWaGNtTm9JRDBnYm01RVpYTmpaVzUwTG0xaGEyVkpibWwwYVdGc2FYcGxaRTVPVTJWaGNtTm9LSFJvYVhNdVpHbHpkR0Z1WTJWR2JpazdYRzRnSUgxY2JseHVJQ0J3Y21sMllYUmxJRzFoYTJWVFpXRnlZMmhIY21Gd2FDaFlPaUJXWldOMGIzSXBJSHRjYmlBZ0lDQmpiMjV6ZENCcmJtNUpibVJwWTJWeklEMGdkR2hwY3k1cmJtNUpibVJwWTJWeklUdGNiaUFnSUNCamIyNXpkQ0JyYm01RWFYTjBZVzVqWlhNZ1BTQjBhR2x6TG10dWJrUnBjM1JoYm1ObGN5RTdYRzRnSUNBZ1kyOXVjM1FnWkdsdGN5QTlJRnRZTG14bGJtZDBhQ3dnV0M1c1pXNW5kR2hkTzF4dUlDQWdJR052Ym5OMElITmxZWEpqYUVkeVlYQm9JRDBnYm1WM0lHMWhkSEpwZUM1VGNHRnljMlZOWVhSeWFYZ29XMTBzSUZ0ZExDQmJYU3dnWkdsdGN5azdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnJibTVKYm1ScFkyVnpMbXhsYm1kMGFEc2dhU3NyS1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JyYm00Z1BTQnJibTVKYm1ScFkyVnpXMmxkTzF4dUlDQWdJQ0FnWTI5dWMzUWdaR2x6ZEdGdVkyVnpJRDBnYTI1dVJHbHpkR0Z1WTJWelcybGRPMXh1SUNBZ0lDQWdabTl5SUNoc1pYUWdhaUE5SURBN0lHb2dQQ0JyYm00dWJHVnVaM1JvT3lCcUt5c3BJSHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdibVZwWjJoaWIzSWdQU0JyYm01YmFsMDdYRzRnSUNBZ0lDQWdJR052Ym5OMElHUnBjM1JoYm1ObElEMGdaR2x6ZEdGdVkyVnpXMnBkTzF4dUlDQWdJQ0FnSUNCcFppQW9aR2x6ZEdGdVkyVWdQaUF3S1Z4dUlDQWdJQ0FnSUNBZ0lITmxZWEpqYUVkeVlYQm9Mbk5sZENocExDQnVaV2xuYUdKdmNpd2daR2x6ZEdGdVkyVXBPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNibHh1SUNBZ0lHTnZibk4wSUhSeVlXNXpjRzl6WlNBOUlHMWhkSEpwZUM1MGNtRnVjM0J2YzJVb2MyVmhjbU5vUjNKaGNHZ3BPMXh1SUNBZ0lISmxkSFZ5YmlCdFlYUnlhWGd1YldGNGFXMTFiU2h6WldGeVkyaEhjbUZ3YUN3Z2RISmhibk53YjNObEtUdGNiaUFnZlZ4dVhHNGdJQzhxS2x4dUlDQWdLaUJVY21GdWMyWnZjbTF6SUdSaGRHRWdkRzhnZEdobElHVjRhWE4wYVc1bklHVnRZbVZrWkdsdVp5QnpjR0ZqWlM1Y2JpQWdJQ292WEc0Z0lIUnlZVzV6Wm05eWJTaDBiMVJ5WVc1elptOXliVG9nVm1WamRHOXlLU0I3WEc0Z0lDQWdMeThnVlhObElIUm9aU0J3Y21WMmFXOTFjeUJ5WVhkRVlYUmhYRzRnSUNBZ1kyOXVjM1FnY21GM1JHRjBZU0E5SUhSb2FYTXVXRHRjYmlBZ0lDQnBaaUFvY21GM1JHRjBZU0E5UFQwZ2RXNWtaV1pwYm1Wa0lIeDhJSEpoZDBSaGRHRXViR1Z1WjNSb0lEMDlQU0F3S1Z4dUlDQWdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLQ2RPYnlCa1lYUmhJR2hoY3lCaVpXVnVJR1pwZEM0bktUdGNibHh1WEc0Z0lDQWdiR1YwSUc1T1pXbG5hR0p2Y25NZ1BTQk5ZWFJvTG1ac2IyOXlLSFJvYVhNdWJrNWxhV2RvWW05eWN5QXFJSFJvYVhNdWRISmhibk5tYjNKdFVYVmxkV1ZUYVhwbEtUdGNiaUFnSUNCdVRtVnBaMmhpYjNKeklEMGdUV0YwYUM1dGFXNG9jbUYzUkdGMFlTNXNaVzVuZEdnc0lHNU9aV2xuYUdKdmNuTXBPMXh1SUNBZ0lHTnZibk4wSUdsdWFYUWdQU0J1YmtSbGMyTmxiblF1YVc1cGRHbGhiR2w2WlZObFlYSmphQ2hjYmlBZ0lDQWdJSFJvYVhNdWNuQkdiM0psYzNRc1hHNGdJQ0FnSUNCeVlYZEVZWFJoTEZ4dUlDQWdJQ0FnZEc5VWNtRnVjMlp2Y20wc1hHNGdJQ0FnSUNCdVRtVnBaMmhpYjNKekxGeHVJQ0FnSUNBZ2RHaHBjeTVwYm1sMFJuSnZiVkpoYm1SdmJTeGNiaUFnSUNBZ0lIUm9hWE11YVc1cGRFWnliMjFVY21WbExGeHVJQ0FnSUNBZ2RHaHBjeTV5WVc1a2IyMWNiaUFnSUNBcE8xeHVYRzRnSUNBZ1kyOXVjM1FnY21WemRXeDBJRDBnZEdocGN5NXpaV0Z5WTJnb2NtRjNSR0YwWVN3Z2RHaHBjeTV6WldGeVkyaEhjbUZ3YUN3Z2FXNXBkQ3dnZEc5VWNtRnVjMlp2Y20wcE8xeHVYRzRnSUNBZ2JHVjBJSHRwYm1ScFkyVnpMQ0IzWldsbmFIUnpPaUJrYVhOMFlXNWpaWE45SUQwZ2FHVmhjQzVrWldobFlYQlRiM0owS0hKbGMzVnNkQ2s3WEc1Y2JpQWdJQ0JwYm1ScFkyVnpJRDBnYVc1a2FXTmxjeTV0WVhBb0tIZ3BJRDArSUhndWMyeHBZMlVvTUN3Z2RHaHBjeTV1VG1WcFoyaGliM0p6S1NrN1hHNGdJQ0FnWkdsemRHRnVZMlZ6SUQwZ1pHbHpkR0Z1WTJWekxtMWhjQ2dvZUNrZ1BUNGdlQzV6YkdsalpTZ3dMQ0IwYUdsekxtNU9aV2xuYUdKdmNuTXBLVHRjYmx4dUlDQWdJR052Ym5OMElHRmthblZ6ZEdWa1RHOWpZV3hEYjI1dVpXTjBhWFpwZEhrZ1BTQk5ZWFJvTG0xaGVDZ3dMQ0IwYUdsekxteHZZMkZzUTI5dWJtVmpkR2wyYVhSNUlDMGdNU2s3WEc0Z0lDQWdZMjl1YzNRZ2UzTnBaMjFoY3l3Z2NtaHZjMzBnUFNCMGFHbHpMbk50YjI5MGFFdE9Ua1JwYzNSaGJtTmxLRnh1SUNBZ0lDQWdaR2x6ZEdGdVkyVnpMRnh1SUNBZ0lDQWdkR2hwY3k1dVRtVnBaMmhpYjNKekxGeHVJQ0FnSUNBZ1lXUnFkWE4wWldSTWIyTmhiRU52Ym01bFkzUnBkbWwwZVZ4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0JqYjI1emRDQjdjbTkzY3l3Z1kyOXNjeXdnZG1Gc2MzMGdQU0IwYUdsekxtTnZiWEIxZEdWTlpXMWlaWEp6YUdsd1UzUnlaVzVuZEdoektGeHVJQ0FnSUNBZ2FXNWthV05sY3l4Y2JpQWdJQ0FnSUdScGMzUmhibU5sY3l4Y2JpQWdJQ0FnSUhOcFoyMWhjeXhjYmlBZ0lDQWdJSEpvYjNOY2JpQWdJQ0FwTzF4dVhHNGdJQ0FnWTI5dWMzUWdjMmw2WlNBOUlGdDBiMVJ5WVc1elptOXliUzVzWlc1bmRHZ3NJSEpoZDBSaGRHRXViR1Z1WjNSb1hUdGNiaUFnSUNCc1pYUWdaM0poY0dnZ1BTQnVaWGNnYldGMGNtbDRMbE53WVhKelpVMWhkSEpwZUNoeWIzZHpMQ0JqYjJ4ekxDQjJZV3h6TENCemFYcGxLVHRjYmx4dUlDQWdJQzh2SUZSb2FYTWdkMkZ6SUdFZ2RtVnllU0J6Y0dWamFXRnNiSGtnWTI5dWMzUnlkV04wWldRZ1ozSmhjR2dnZDJsMGFDQmpiMjV6ZEdGdWRDQmtaV2R5WldVdVhHNGdJQ0FnTHk4Z1ZHaGhkQ0JzWlhSeklIVnpJR1J2SUdaaGJtTjVJSFZ1Y0dGamEybHVaeUJpZVNCeVpYTm9ZWEJwYm1jZ2RHaGxJR056Y2lCdFlYUnlhWGdnYVc1a2FXTmxjMXh1SUNBZ0lDOHZJR0Z1WkNCa1lYUmhMaUJFYjJsdVp5QnpieUJ5Wld4cFpYTWdiMjRnZEdobElHTnZibk4wWVc1MElHUmxaM0psWlNCaGMzTjFiWEIwYVc5dUlWeHVYRzRnSUNBZ1kyOXVjM1FnYm05eWJXVmtJRDBnYldGMGNtbDRMbTV2Y20xaGJHbDZaU2huY21Gd2FDd2diV0YwY21sNExrNXZjbTFVZVhCbExtd3hLVHRjYmx4dUlDQWdJR052Ym5OMElHTnpjazFoZEhKcGVDQTlJRzFoZEhKcGVDNW5aWFJEVTFJb2JtOXliV1ZrS1R0Y2JpQWdJQ0JqYjI1emRDQnVVRzlwYm5SeklEMGdkRzlVY21GdWMyWnZjbTB1YkdWdVozUm9PMXh1WEc0Z0lDQWdZMjl1YzNRZ1pVbHVaR2xqWlhNZ1BTQjFkR2xzY3k1eVpYTm9ZWEJsTW1Rb1hHNGdJQ0FnSUNCamMzSk5ZWFJ5YVhndWFXNWthV05sY3l4Y2JpQWdJQ0FnSUc1UWIybHVkSE1zWEc0Z0lDQWdJQ0IwYUdsekxtNU9aV2xuYUdKdmNuTmNiaUFnSUNBcE8xeHVYRzRnSUNBZ1kyOXVjM1FnWlZkbGFXZG9kSE1nUFNCMWRHbHNjeTV5WlhOb1lYQmxNbVFvWEc0Z0lDQWdJQ0JqYzNKTllYUnlhWGd1ZG1Gc2RXVnpMRnh1SUNBZ0lDQWdibEJ2YVc1MGN5eGNiaUFnSUNBZ0lIUm9hWE11Yms1bGFXZG9ZbTl5YzF4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0JqYjI1emRDQmxiV0psWkdScGJtY2dQU0JwYm1sMFZISmhibk5tYjNKdEtHVkpibVJwWTJWekxDQmxWMlZwWjJoMGN5d2dkR2hwY3k1bGJXSmxaR1JwYm1jcE8xeHVYRzRnSUNBZ1kyOXVjM1FnYmtWd2IyTm9jeUE5SUhSb2FYTXVia1Z3YjJOb2N5QS9YRzRnSUNBZ0lDQjBhR2x6TG01RmNHOWphSE1nTHlBeklEcGNiaUFnSUNBZ0lHZHlZWEJvTG01U2IzZHpJRHc5SURFd01EQXdJRDljYmlBZ0lDQWdJQ0FnTVRBd0lEcGNiaUFnSUNBZ0lDQWdNekE3WEc1Y2JpQWdJQ0JqYjI1emRDQm5jbUZ3YUUxaGVDQTlJR2R5WVhCb1hHNGdJQ0FnSUNBdVoyVjBWbUZzZFdWektDbGNiaUFnSUNBZ0lDNXlaV1IxWTJVb0tHMWhlQ3dnZG1Gc0tTQTlQaUFvZG1Gc0lENGdiV0Y0SUQ4Z2RtRnNJRG9nYldGNEtTd2dNQ2s3WEc0Z0lDQWdaM0poY0dnZ1BTQm5jbUZ3YUM1dFlYQW9LSFpoYkhWbEtTQTlQaUFvZG1Gc2RXVWdQQ0JuY21Gd2FFMWhlQ0F2SUc1RmNHOWphSE1nUHlBd0lEb2dkbUZzZFdVcEtUdGNiaUFnSUNCbmNtRndhQ0E5SUcxaGRISnBlQzVsYkdsdGFXNWhkR1ZhWlhKdmN5aG5jbUZ3YUNrN1hHNWNiaUFnSUNCamIyNXpkQ0JsY0c5amFITlFaWEpUWVcxd2JHVWdQU0IwYUdsekxtMWhhMlZGY0c5amFITlFaWEpUWVcxd2JHVW9YRzRnSUNBZ0lDQm5jbUZ3YUM1blpYUldZV3gxWlhNb0tTeGNiaUFnSUNBZ0lHNUZjRzlqYUhOY2JpQWdJQ0FwTzF4dUlDQWdJR052Ym5OMElHaGxZV1FnUFNCbmNtRndhQzVuWlhSU2IzZHpLQ2s3WEc0Z0lDQWdZMjl1YzNRZ2RHRnBiQ0E5SUdkeVlYQm9MbWRsZEVOdmJITW9LVHRjYmx4dUlDQWdJQzh2SUVsdWFYUnBZV3hwZW1VZ2IzQjBhVzFwZW1GMGFXOXVJSE5zYVdkb2RHeDVJR1JwWm1abGNtVnVkR3g1SUhSb1lXNGdkR2hsSUdacGRDQnRaWFJvYjJRdVhHNGdJQ0FnZEdocGN5NWhjM05wWjI1UGNIUnBiV2w2WVhScGIyNVRkR0YwWlZCaGNtRnRaWFJsY25Nb2UxeHVJQ0FnSUNBZ2FHVmhaRVZ0WW1Wa1pHbHVaem9nWlcxaVpXUmthVzVuTEZ4dUlDQWdJQ0FnZEdGcGJFVnRZbVZrWkdsdVp6b2dkR2hwY3k1bGJXSmxaR1JwYm1jc1hHNGdJQ0FnSUNCb1pXRmtMRnh1SUNBZ0lDQWdkR0ZwYkN4Y2JpQWdJQ0FnSUdOMWNuSmxiblJGY0c5amFEb2dNQ3hjYmlBZ0lDQWdJRzVGY0c5amFITXNYRzRnSUNBZ0lDQnVWbVZ5ZEdsalpYTTZJR2R5WVhCb0xtZGxkRVJwYlhNb0tWc3hYU3hjYmlBZ0lDQWdJR1Z3YjJOb2MxQmxjbE5oYlhCc1pTeGNiaUFnSUNCOUtUdGNiaUFnSUNCMGFHbHpMbkJ5WlhCaGNtVkdiM0pQY0hScGJXbDZZWFJwYjI1TWIyOXdLQ2s3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdkR2hwY3k1dmNIUnBiV2w2WlV4aGVXOTFkQ2dwTzF4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFTm9aV05yY3lCcFppQjNaU2R5WlNCMWMybHVaeUJ6ZFhCbGNuWnBjMlZrSUhCeWIycGxZM1JwYjI0c0lIUm9aVzRnY0hKdlkyVnpjeUIwYUdVZ1ozSmhjR2hjYmlBZ0lDb2dZV05qYjNKa2FXNW5iSGt1WEc0Z0lDQXFMMXh1SUNCd2NtbDJZWFJsSUhCeWIyTmxjM05IY21Gd2FFWnZjbE4xY0dWeWRtbHpaV1JRY205cVpXTjBhVzl1S0NrZ2UxeHVJQ0FnSUdOdmJuTjBJSHRaTENCWWZTQTlJSFJvYVhNN1hHNGdJQ0FnYVdZZ0tGa3BJSHRjYmlBZ0lDQWdJR2xtSUNoWkxteGxibWQwYUNBaFBUMGdXQzVzWlc1bmRHZ3BYRzRnSUNBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpZ25UR1Z1WjNSb0lHOW1JRmdnWVc1a0lIa2diWFZ6ZENCaVpTQmxjWFZoYkNjcE8xeHVYRzVjYmlBZ0lDQWdJR2xtSUNoMGFHbHpMblJoY21kbGRFMWxkSEpwWXlBOVBUMGdWR0Z5WjJWMFRXVjBjbWxqTG1OaGRHVm5iM0pwWTJGc0tTQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElHeDBJRDBnZEdocGN5NTBZWEpuWlhSWFpXbG5hSFFnUENBeExqQTdYRzRnSUNBZ0lDQWdJR052Ym5OMElHWmhja1JwYzNRZ1BTQnNkQ0EvSURJdU5TQXFJQ2d4TGpBZ0x5QW9NUzR3SUMwZ2RHaHBjeTUwWVhKblpYUlhaV2xuYUhRcEtTQTZJREV1TUdVeE1qdGNiaUFnSUNBZ0lDQWdkR2hwY3k1bmNtRndhQ0E5SUhSb2FYTXVZMkYwWldkdmNtbGpZV3hUYVcxd2JHbGphV0ZzVTJWMFNXNTBaWEp6WldOMGFXOXVLRnh1SUNBZ0lDQWdJQ0FnSUhSb2FYTXVaM0poY0dnc1hHNGdJQ0FnSUNBZ0lDQWdXU3hjYmlBZ0lDQWdJQ0FnSUNCbVlYSkVhWE4wWEc0Z0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnSUNBdkx5QlVUMFJQSUNoaGJtUjVZMjlsYm1WdVFDazZJR0ZrWkNCdWIyNHRZMkYwWldkdmNtbGpZV3dnYzNWd1pYSjJhWE5sWkNCbGJXSmxaR1JwYm1kekxseHVJQ0FnSUgxY2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQk5ZVzUxWVd4c2VTQnpkR1Z3SUhSb2NtOTFaMmdnZEdobElHOXdkR2x0YVhwaGRHbHZiaUJ3Y205alpYTnpJRzl1WlNCbGNHOWphQ0JoZENCaElIUnBiV1V1WEc0Z0lDQXFMMXh1SUNCemRHVndLQ2tnZTF4dUlDQWdJR052Ym5OMElIdGpkWEp5Wlc1MFJYQnZZMmg5SUQwZ2RHaHBjeTV2Y0hScGJXbDZZWFJwYjI1VGRHRjBaVHRjYmx4dUlDQWdJR2xtSUNoamRYSnlaVzUwUlhCdlkyZ2dQQ0IwYUdsekxtZGxkRTVGY0c5amFITW9LU2xjYmlBZ0lDQWdJSFJvYVhNdWIzQjBhVzFwZW1WTVlYbHZkWFJUZEdWd0tHTjFjbkpsYm5SRmNHOWphQ2s3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdkR2hwY3k1dmNIUnBiV2w2WVhScGIyNVRkR0YwWlM1amRYSnlaVzUwUlhCdlkyZzdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nVW1WMGRYSnVjeUIwYUdVZ1kyOXRjSFYwWldRZ2NISnZhbVZqZEdWa0lHVnRZbVZrWkdsdVp5NWNiaUFnSUNvdlhHNGdJR2RsZEVWdFltVmtaR2x1WnlncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NWxiV0psWkdScGJtYzdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUTI5dGNIVjBaU0IwYUdVZ1lHQnVUbVZwWjJoaWIzSnpZR0FnYm1WaGNtVnpkQ0J3YjJsdWRITWdabTl5SUdWaFkyZ2daR0YwWVNCd2IybHVkQ0JwYmlCZ1lGaGdZRnh1SUNBZ0tpQlVhR2x6SUcxaGVTQmlaU0JsZUdGamRDd2dZblYwSUcxdmNtVWdiR2xyWld4NUlHbHpJR0Z3Y0hKdmVHbHRZWFJsWkNCMmFXRWdibVZoY21WemRDQnVaV2xuYUdKdmNseHVJQ0FnS2lCa1pYTmpaVzUwTGx4dUlDQWdLaTljYmlBZ2NISnBkbUYwWlNCdVpXRnlaWE4wVG1WcFoyaGliM0p6S0ZnNklGWmxZM1J2Y2lrZ2UxeHVJQ0FnSUdOdmJuTjBJSHRrYVhOMFlXNWpaVVp1TENCdVRtVnBaMmhpYjNKemZTQTlJSFJvYVhNN1hHNGdJQ0FnWTI5dWMzUWdiRzluTWlBOUlDaHVPaUJ1ZFcxaVpYSXBJRDArSUUxaGRHZ3ViRzluS0c0cElDOGdUV0YwYUM1c2IyY29NaWs3WEc0Z0lDQWdZMjl1YzNRZ2JXVjBjbWxqVGs1RVpYTmpaVzUwSUQwZ2JtNUVaWE5qWlc1MExtMWhhMlZPVGtSbGMyTmxiblFvWkdsemRHRnVZMlZHYml3Z2RHaHBjeTV5WVc1a2IyMHBPMXh1WEc0Z0lDQWdMeThnU0dGdVpHeGxJSEI1ZEdodmJqTWdjbTkxYm1ScGJtY2daRzkzYmlCbWNtOXRJREF1TlNCa2FYTmpjbkJoYm1ONVhHNGdJQ0FnWTI5dWMzUWdjbTkxYm1RZ1BTQW9iam9nYm5WdFltVnlLU0E5UGlCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnYmlBOVBUMGdNQzQxSUQ4Z01DQTZJRTFoZEdndWNtOTFibVFvYmlrN1hHNGdJQ0FnZlR0Y2JseHVJQ0FnSUdOdmJuTjBJRzVVY21WbGN5QTlJRFVnS3lCTllYUm9MbVpzYjI5eUtISnZkVzVrS0ZndWJHVnVaM1JvSUNvcUlEQXVOU0F2SURJd0xqQXBLVHRjYmlBZ0lDQmpiMjV6ZENCdVNYUmxjbk1nUFNCTllYUm9MbTFoZUNnMUxDQk5ZWFJvTG1ac2IyOXlLRTFoZEdndWNtOTFibVFvYkc5bk1paFlMbXhsYm1kMGFDa3BLU2s3WEc1Y2JpQWdJQ0IwYUdsekxuSndSbTl5WlhOMElEMGdkSEpsWlM1dFlXdGxSbTl5WlhOMEtGZ3NJRzVPWldsbmFHSnZjbk1zSUc1VWNtVmxjeXdnZEdocGN5NXlZVzVrYjIwcE8xeHVYRzRnSUNBZ1kyOXVjM1FnYkdWaFprRnljbUY1SUQwZ2RISmxaUzV0WVd0bFRHVmhaa0Z5Y21GNUtIUm9hWE11Y25CR2IzSmxjM1FwTzF4dUlDQWdJR052Ym5OMElIdHBibVJwWTJWekxDQjNaV2xuYUhSemZTQTlJRzFsZEhKcFkwNU9SR1Z6WTJWdWRDaGNiaUFnSUNBZ0lGZ3NYRzRnSUNBZ0lDQnNaV0ZtUVhKeVlYa3NYRzRnSUNBZ0lDQnVUbVZwWjJoaWIzSnpMRnh1SUNBZ0lDQWdia2wwWlhKelhHNGdJQ0FnS1R0Y2JpQWdJQ0J5WlhSMWNtNGdlMnR1YmtsdVpHbGpaWE02SUdsdVpHbGpaWE1zSUd0dWJrUnBjM1JoYm1ObGN6b2dkMlZwWjJoMGMzMDdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUjJsMlpXNGdZU0J6WlhRZ2IyWWdaR0YwWVNCWUxDQmhJRzVsYVdkb1ltOXlhRzl2WkNCemFYcGxMQ0JoYm1RZ1lTQnRaV0Z6ZFhKbElHOW1JR1JwYzNSaGJtTmxYRzRnSUNBcUlHTnZiWEIxZEdVZ2RHaGxJR1oxZW5wNUlITnBiWEJzYVdOcFlXd2djMlYwSUNob1pYSmxJSEpsY0hKbGMyVnVkR1ZrSUdGeklHRWdablY2ZW5rZ1ozSmhjR2dnYVc1Y2JpQWdJQ29nZEdobElHWnZjbTBnYjJZZ1lTQnpjR0Z5YzJVZ2JXRjBjbWw0S1NCaGMzTnZZMmxoZEdWa0lIUnZJSFJvWlNCa1lYUmhMaUJVYUdseklHbHpJR1J2Ym1VZ1lubGNiaUFnSUNvZ2JHOWpZV3hzZVNCaGNIQnliM2hwYldGMGFXNW5JR2RsYjJSbGMybGpJR1JwYzNSaGJtTmxJR0YwSUdWaFkyZ2djRzlwYm5Rc0lHTnlaV0YwYVc1bklHRWdablY2ZW5sY2JpQWdJQ29nYzJsdGNHeHBZMmxoYkNCelpYUWdabTl5SUdWaFkyZ2djM1ZqYUNCd2IybHVkQ3dnWVc1a0lIUm9aVzRnWTI5dFltbHVhVzVuSUdGc2JDQjBhR1VnYkc5allXeGNiaUFnSUNvZ1puVjZlbmtnYzJsdGNHeHBZMmxoYkNCelpYUnpJR2x1ZEc4Z1lTQm5iRzlpWVd3Z2IyNWxJSFpwWVNCaElHWjFlbnA1SUhWdWFXOXVMbHh1SUNBZ0tpOWNiaUFnY0hKcGRtRjBaU0JtZFhwNmVWTnBiWEJzYVdOcFlXeFRaWFFvWEc0Z0lDQWdXRG9nVm1WamRHOXlMRnh1SUNBZ0lHNU9aV2xuYUdKdmNuTTZJRzUxYldKbGNpeGNiaUFnSUNCelpYUlBjRTFwZUZKaGRHbHZJRDBnTVM0d1hHNGdJQ2tnZTF4dUlDQWdJR052Ym5OMElIdHJibTVKYm1ScFkyVnpJRDBnVzEwc0lHdHVia1JwYzNSaGJtTmxjeUE5SUZ0ZExDQnNiMk5oYkVOdmJtNWxZM1JwZG1sMGVYMGdQU0IwYUdsek8xeHVYRzRnSUNBZ1kyOXVjM1FnZTNOcFoyMWhjeXdnY21odmMzMGdQU0IwYUdsekxuTnRiMjkwYUV0T1RrUnBjM1JoYm1ObEtGeHVJQ0FnSUNBZ2EyNXVSR2x6ZEdGdVkyVnpMRnh1SUNBZ0lDQWdiazVsYVdkb1ltOXljeXhjYmlBZ0lDQWdJR3h2WTJGc1EyOXVibVZqZEdsMmFYUjVYRzRnSUNBZ0tUdGNibHh1SUNBZ0lHTnZibk4wSUh0eWIzZHpMQ0JqYjJ4ekxDQjJZV3h6ZlNBOUlIUm9hWE11WTI5dGNIVjBaVTFsYldKbGNuTm9hWEJUZEhKbGJtZDBhSE1vWEc0Z0lDQWdJQ0JyYm01SmJtUnBZMlZ6TEZ4dUlDQWdJQ0FnYTI1dVJHbHpkR0Z1WTJWekxGeHVJQ0FnSUNBZ2MybG5iV0Z6TEZ4dUlDQWdJQ0FnY21odmMxeHVJQ0FnSUNrN1hHNWNiaUFnSUNCamIyNXpkQ0J6YVhwbElEMGdXMWd1YkdWdVozUm9MQ0JZTG14bGJtZDBhRjA3WEc0Z0lDQWdZMjl1YzNRZ2MzQmhjbk5sVFdGMGNtbDRJRDBnYm1WM0lHMWhkSEpwZUM1VGNHRnljMlZOWVhSeWFYZ29jbTkzY3l3Z1kyOXNjeXdnZG1Gc2N5d2djMmw2WlNrN1hHNWNiaUFnSUNCamIyNXpkQ0IwY21GdWMzQnZjMlVnUFNCdFlYUnlhWGd1ZEhKaGJuTndiM05sS0hOd1lYSnpaVTFoZEhKcGVDazdYRzRnSUNBZ1kyOXVjM1FnY0hKdlpFMWhkSEpwZUNBOUlHMWhkSEpwZUM1d1lXbHlkMmx6WlUxMWJIUnBjR3g1S0hOd1lYSnpaVTFoZEhKcGVDd2dkSEpoYm5Od2IzTmxLVHRjYmx4dUlDQWdJR052Ym5OMElHRWdQU0J0WVhSeWFYZ3VjM1ZpZEhKaFkzUW9iV0YwY21sNExtRmtaQ2h6Y0dGeWMyVk5ZWFJ5YVhnc0lIUnlZVzV6Y0c5elpTa3NJSEJ5YjJSTllYUnlhWGdwTzF4dUlDQWdJR052Ym5OMElHSWdQU0J0WVhSeWFYZ3ViWFZzZEdsd2JIbFRZMkZzWVhJb1lTd2djMlYwVDNCTmFYaFNZWFJwYnlrN1hHNGdJQ0FnWTI5dWMzUWdZeUE5SUcxaGRISnBlQzV0ZFd4MGFYQnNlVk5qWVd4aGNpaHdjbTlrVFdGMGNtbDRMQ0F4TGpBZ0xTQnpaWFJQY0UxcGVGSmhkR2x2S1R0Y2JpQWdJQ0JqYjI1emRDQnlaWE4xYkhRZ1BTQnRZWFJ5YVhndVlXUmtLR0lzSUdNcE8xeHVYRzRnSUNBZ2NtVjBkWEp1SUhKbGMzVnNkRHRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCRGIyMWlhVzVsSUdFZ1puVjZlbmtnYzJsdGNHeHBZMmxoYkNCelpYUWdkMmwwYUNCaGJtOTBhR1Z5SUdaMWVucDVJSE5wYlhCc2FXTnBZV3dnYzJWMFhHNGdJQ0FxSUdkbGJtVnlZWFJsWkNCbWNtOXRJR05oZEdWbmIzSnBZMkZzSUdSaGRHRWdkWE5wYm1jZ1kyRjBaV2R2Y21sallXd2daR2x6ZEdGdVkyVnpMaUJVYUdVZ2RHRnlaMlYwWEc0Z0lDQXFJR1JoZEdFZ2FYTWdZWE56ZFcxbFpDQjBieUJpWlNCallYUmxaMjl5YVdOaGJDQnNZV0psYkNCa1lYUmhJQ2hoSUhabFkzUnZjaUJ2WmlCc1lXSmxiSE1wTEZ4dUlDQWdLaUJoYm1RZ2RHaHBjeUIzYVd4c0lIVndaR0YwWlNCMGFHVWdablY2ZW5rZ2MybHRjR3hwWTJsaGJDQnpaWFFnZEc4Z2NtVnpjR1ZqZENCMGFHRjBJR3hoWW1Wc0lHUmhkR0V1WEc0Z0lDQXFMMXh1SUNCd2NtbDJZWFJsSUdOaGRHVm5iM0pwWTJGc1UybHRjR3hwWTJsaGJGTmxkRWx1ZEdWeWMyVmpkR2x2YmloY2JpQWdJQ0J6YVcxd2JHbGphV0ZzVTJWME9pQnRZWFJ5YVhndVUzQmhjbk5sVFdGMGNtbDRMRnh1SUNBZ0lIUmhjbWRsZERvZ2JuVnRZbVZ5VzEwc1hHNGdJQ0FnWm1GeVJHbHpkRG9nYm5WdFltVnlMRnh1SUNBZ0lIVnVhMjV2ZDI1RWFYTjBJRDBnTVM0d1hHNGdJQ2tnZTF4dUlDQWdJR3hsZENCcGJuUmxjbk5sWTNScGIyNGdQU0JtWVhOMFNXNTBaWEp6WldOMGFXOXVLRnh1SUNBZ0lDQWdjMmx0Y0d4cFkybGhiRk5sZEN4Y2JpQWdJQ0FnSUhSaGNtZGxkQ3hjYmlBZ0lDQWdJSFZ1YTI1dmQyNUVhWE4wTEZ4dUlDQWdJQ0FnWm1GeVJHbHpkRnh1SUNBZ0lDazdYRzRnSUNBZ2FXNTBaWEp6WldOMGFXOXVJRDBnYldGMGNtbDRMbVZzYVcxcGJtRjBaVnBsY205ektHbHVkR1Z5YzJWamRHbHZiaWs3WEc0Z0lDQWdjbVYwZFhKdUlISmxjMlYwVEc5allXeERiMjV1WldOMGFYWnBkSGtvYVc1MFpYSnpaV04wYVc5dUtUdGNiaUFnZlZ4dVhHNGdJQzhxS2x4dUlDQWdLaUJEYjIxd2RYUmxJR0VnWTI5dWRHbHVkVzkxY3lCMlpYSnphVzl1SUc5bUlIUm9aU0JrYVhOMFlXNWpaU0IwYnlCMGFHVWdhM1JvSUc1bFlYSmxjM1JjYmlBZ0lDb2dibVZwWjJoaWIzSXVJRlJvWVhRZ2FYTXNJSFJvYVhNZ2FYTWdjMmx0YVd4aGNpQjBieUJyYm00dFpHbHpkR0Z1WTJVZ1luVjBJR0ZzYkc5M2N5QmpiMjUwYVc1MWIzVnpYRzRnSUNBcUlHc2dkbUZzZFdWeklISmhkR2hsY2lCMGFHRnVJSEpsY1hWcGNtbHVaeUJoYmlCcGJuUmxaM0poYkNCckxpQkpiaUJsYzNOalpXNWpaU0IzWlNCaGNtVWdjMmx0Y0d4NVhHNGdJQ0FxSUdOdmJYQjFkR2x1WnlCMGFHVWdaR2x6ZEdGdVkyVWdjM1ZqYUNCMGFHRjBJSFJvWlNCallYSmthVzVoYkdsMGVTQnZaaUJtZFhwNmVTQnpaWFFnZDJVZ1oyVnVaWEpoZEdWY2JpQWdJQ29nYVhNZ2F5NWNiaUFnSUNvdlhHNGdJSEJ5YVhaaGRHVWdjMjF2YjNSb1MwNU9SR2x6ZEdGdVkyVW9YRzRnSUNBZ1pHbHpkR0Z1WTJWek9pQldaV04wYjNKekxGeHVJQ0FnSUdzNklHNTFiV0psY2l4Y2JpQWdJQ0JzYjJOaGJFTnZibTVsWTNScGRtbDBlU0E5SURFdU1DeGNiaUFnSUNCdVNYUmxjaUE5SURZMExGeHVJQ0FnSUdKaGJtUjNhV1IwYUNBOUlERXVNRnh1SUNBcElIdGNiaUFnSUNCamIyNXpkQ0IwWVhKblpYUWdQU0FvVFdGMGFDNXNiMmNvYXlrZ0x5Qk5ZWFJvTG14dlp5Z3lLU2tnS2lCaVlXNWtkMmxrZEdnN1hHNGdJQ0FnWTI5dWMzUWdjbWh2SUQwZ2RYUnBiSE11ZW1WeWIzTW9aR2x6ZEdGdVkyVnpMbXhsYm1kMGFDazdYRzRnSUNBZ1kyOXVjM1FnY21WemRXeDBJRDBnZFhScGJITXVlbVZ5YjNNb1pHbHpkR0Z1WTJWekxteGxibWQwYUNrN1hHNWNiaUFnSUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHUnBjM1JoYm1ObGN5NXNaVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJQ0FnYkdWMElHeHZJRDBnTUM0d08xeHVJQ0FnSUNBZ2JHVjBJR2hwSUQwZ1NXNW1hVzVwZEhrN1hHNGdJQ0FnSUNCc1pYUWdiV2xrSUQwZ01TNHdPMXh1WEc0Z0lDQWdJQ0F2THlCVVQwUlBPaUJVYUdseklHbHpJSFpsY25rZ2FXNWxabVpwWTJsbGJuUXNJR0oxZENCM2FXeHNJR1J2SUdadmNpQnViM2N1SUVaSldFMUZYRzRnSUNBZ0lDQmpiMjV6ZENCcGRHaEVhWE4wWVc1alpYTWdQU0JrYVhOMFlXNWpaWE5iYVYwN1hHNGdJQ0FnSUNCamIyNXpkQ0J1YjI1YVpYSnZSR2x6ZEhNZ1BTQnBkR2hFYVhOMFlXNWpaWE11Wm1sc2RHVnlLQ2hrS1NBOVBpQmtJRDRnTUM0d0tUdGNibHh1SUNBZ0lDQWdhV1lnS0c1dmJscGxjbTlFYVhOMGN5NXNaVzVuZEdnZ1BqMGdiRzlqWVd4RGIyNXVaV04wYVhacGRIa3BJSHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdhVzVrWlhnZ1BTQk5ZWFJvTG1ac2IyOXlLR3h2WTJGc1EyOXVibVZqZEdsMmFYUjVLVHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdhVzUwWlhKd2IyeGhkR2x2YmlBOUlHeHZZMkZzUTI5dWJtVmpkR2wyYVhSNUlDMGdhVzVrWlhnN1hHNGdJQ0FnSUNBZ0lHbG1JQ2hwYm1SbGVDQStJREFwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlhRzliYVYwZ1BTQnViMjVhWlhKdlJHbHpkSE5iYVc1a1pYZ2dMU0F4WFR0Y2JpQWdJQ0FnSUNBZ0lDQnBaaUFvYVc1MFpYSndiMnhoZEdsdmJpQStJRk5OVDA5VVNGOUxYMVJQVEVWU1FVNURSU2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdjbWh2VzJsZElDczlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHbHVkR1Z5Y0c5c1lYUnBiMjRnS2lBb2JtOXVXbVZ5YjBScGMzUnpXMmx1WkdWNFhTQXRJRzV2YmxwbGNtOUVhWE4wYzF0cGJtUmxlQ0F0SURGZEtUdGNiaUFnSUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtaHZXMmxkSUQwZ2FXNTBaWEp3YjJ4aGRHbHZiaUFxSUc1dmJscGxjbTlFYVhOMGMxc3dYVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlNCbGJITmxJR2xtSUNodWIyNWFaWEp2UkdsemRITXViR1Z1WjNSb0lENGdNQ2tnZTF4dUlDQWdJQ0FnSUNCeWFHOWJhVjBnUFNCMWRHbHNjeTV0WVhnb2JtOXVXbVZ5YjBScGMzUnpLVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYmlBOUlEQTdJRzRnUENCdVNYUmxjanNnYmlzcktTQjdYRzRnSUNBZ0lDQWdJR3hsZENCd2MzVnRJRDBnTUM0d08xeHVJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnTVRzZ2FpQThJR1JwYzNSaGJtTmxjMXRwWFM1c1pXNW5kR2c3SUdvckt5a2dlMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR1FnUFNCa2FYTjBZVzVqWlhOYmFWMWJhbDBnTFNCeWFHOWJhVjA3WEc0Z0lDQWdJQ0FnSUNBZ2FXWWdLR1FnUGlBd0tWeHVJQ0FnSUNBZ0lDQWdJQ0FnY0hOMWJTQXJQU0JOWVhSb0xtVjRjQ2d0S0dRZ0x5QnRhV1FwS1R0Y2JpQWdJQ0FnSUNBZ0lDQmxiSE5sWEc0Z0lDQWdJQ0FnSUNBZ0lDQndjM1Z0SUNzOUlERXVNRHRjYmlBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lHbG1JQ2hOWVhSb0xtRmljeWh3YzNWdElDMGdkR0Z5WjJWMEtTQThJRk5OVDA5VVNGOUxYMVJQVEVWU1FVNURSU2xjYmlBZ0lDQWdJQ0FnSUNCaWNtVmhhenRjYmx4dVhHNGdJQ0FnSUNBZ0lHbG1JQ2h3YzNWdElENGdkR0Z5WjJWMEtTQjdYRzRnSUNBZ0lDQWdJQ0FnYUdrZ1BTQnRhV1E3WEc0Z0lDQWdJQ0FnSUNBZ2JXbGtJRDBnS0d4dklDc2dhR2twSUM4Z01pNHdPMXh1SUNBZ0lDQWdJQ0I5SUdWc2MyVWdlMXh1SUNBZ0lDQWdJQ0FnSUd4dklEMGdiV2xrTzF4dUlDQWdJQ0FnSUNBZ0lHbG1JQ2hvYVNBOVBUMGdTVzVtYVc1cGRIa3BYRzRnSUNBZ0lDQWdJQ0FnSUNCdGFXUWdLajBnTWp0Y2JpQWdJQ0FnSUNBZ0lDQmxiSE5sWEc0Z0lDQWdJQ0FnSUNBZ0lDQnRhV1FnUFNBb2JHOGdLeUJvYVNrZ0x5QXlMakE3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ2NtVnpkV3gwVzJsZElEMGdiV2xrTzF4dVhHNGdJQ0FnSUNBdkx5QlVUMFJQT2lCVWFHbHpJR2x6SUhabGNua2dhVzVsWm1acFkybGxiblFzSUdKMWRDQjNhV3hzSUdSdklHWnZjaUJ1YjNjdUlFWkpXRTFGWEc0Z0lDQWdJQ0JwWmlBb2NtaHZXMmxkSUQ0Z01DNHdLU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJRzFsWVc1SmRHaEVhWE4wWVc1alpYTWdQU0IxZEdsc2N5NXRaV0Z1S0dsMGFFUnBjM1JoYm1ObGN5azdYRzRnSUNBZ0lDQWdJR2xtSUNoeVpYTjFiSFJiYVYwZ1BDQk5TVTVmUzE5RVNWTlVYMU5EUVV4RklDb2diV1ZoYmtsMGFFUnBjM1JoYm1ObGN5bGNiaUFnSUNBZ0lDQWdJQ0J5WlhOMWJIUmJhVjBnUFNCTlNVNWZTMTlFU1ZOVVgxTkRRVXhGSUNvZ2JXVmhia2wwYUVScGMzUmhibU5sY3p0Y2JpQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJRzFsWVc1RWFYTjBZVzVqWlhNZ1BTQjFkR2xzY3k1dFpXRnVLR1JwYzNSaGJtTmxjeTV0WVhBb2RYUnBiSE11YldWaGJpa3BPMXh1SUNBZ0lDQWdJQ0JwWmlBb2NtVnpkV3gwVzJsZElEd2dUVWxPWDB0ZlJFbFRWRjlUUTBGTVJTQXFJRzFsWVc1RWFYTjBZVzVqWlhNcFhHNGdJQ0FnSUNBZ0lDQWdjbVZ6ZFd4MFcybGRJRDBnVFVsT1gwdGZSRWxUVkY5VFEwRk1SU0FxSUcxbFlXNUVhWE4wWVc1alpYTTdYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2NtVjBkWEp1SUh0emFXZHRZWE02SUhKbGMzVnNkQ3dnY21odmN6b2djbWh2ZlR0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkRiMjV6ZEhKMVkzUWdkR2hsSUcxbGJXSmxjbk5vYVhBZ2MzUnlaVzVuZEdnZ1pHRjBZU0JtYjNJZ2RHaGxJREV0YzJ0bGJHVjBiMjRnYjJZZ1pXRmphQ0JzYjJOaGJGeHVJQ0FnS2lCbWRYcDZlU0J6YVcxd2JHbGphV0ZzSUhObGRDQXRMU0IwYUdseklHbHpJR1p2Y20xbFpDQmhjeUJoSUhOd1lYSnpaU0J0WVhSeWFYZ2dkMmhsY21VZ1pXRmphQ0J5YjNjZ2FYTmNiaUFnSUNvZ1lTQnNiMk5oYkNCbWRYcDZlU0J6YVcxd2JHbGphV0ZzSUhObGRDd2dkMmwwYUNCaElHMWxiV0psY25Ob2FYQWdjM1J5Wlc1bmRHZ2dabTl5SUhSb1pWeHVJQ0FnS2lBeExYTnBiWEJzWlhnZ2RHOGdaV0ZqYUNCdmRHaGxjaUJrWVhSaElIQnZhVzUwTGx4dUlDQWdLaTljYmlBZ2NISnBkbUYwWlNCamIyMXdkWFJsVFdWdFltVnljMmhwY0ZOMGNtVnVaM1JvY3loY2JpQWdJQ0JyYm01SmJtUnBZMlZ6T2lCV1pXTjBiM0p6TEZ4dUlDQWdJR3R1YmtScGMzUmhibU5sY3pvZ1ZtVmpkRzl5Y3l4Y2JpQWdJQ0J6YVdkdFlYTTZJRzUxYldKbGNsdGRMRnh1SUNBZ0lISm9iM002SUc1MWJXSmxjbHRkWEc0Z0lDazZJSHNnY205M2N6b2diblZ0WW1WeVcxMDdJR052YkhNNklHNTFiV0psY2x0ZE95QjJZV3h6T2lCdWRXMWlaWEpiWFNCOUlIdGNiaUFnSUNCamIyNXpkQ0J1VTJGdGNHeGxjeUE5SUd0dWJrbHVaR2xqWlhNdWJHVnVaM1JvTzF4dUlDQWdJR052Ym5OMElHNU9aV2xuYUdKdmNuTWdQU0JyYm01SmJtUnBZMlZ6V3pCZExteGxibWQwYUR0Y2JseHVJQ0FnSUdOdmJuTjBJSEp2ZDNNZ1BTQjFkR2xzY3k1NlpYSnZjeWh1VTJGdGNHeGxjeUFxSUc1T1pXbG5hR0p2Y25NcE8xeHVJQ0FnSUdOdmJuTjBJR052YkhNZ1BTQjFkR2xzY3k1NlpYSnZjeWh1VTJGdGNHeGxjeUFxSUc1T1pXbG5hR0p2Y25NcE8xeHVJQ0FnSUdOdmJuTjBJSFpoYkhNZ1BTQjFkR2xzY3k1NlpYSnZjeWh1VTJGdGNHeGxjeUFxSUc1T1pXbG5hR0p2Y25NcE8xeHVYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnVVMkZ0Y0d4bGN6c2dhU3NyS1NCN1hHNGdJQ0FnSUNCbWIzSWdLR3hsZENCcUlEMGdNRHNnYWlBOElHNU9aV2xuYUdKdmNuTTdJR29yS3lrZ2UxeHVJQ0FnSUNBZ0lDQnNaWFFnZG1Gc0lEMGdNRHRjYmlBZ0lDQWdJQ0FnYVdZZ0tHdHVia2x1WkdsalpYTmJhVjFiYWwwZ1BUMDlJQzB4S1Z4dUlDQWdJQ0FnSUNBZ0lHTnZiblJwYm5WbE95QXZMeUJYWlNCa2FXUnVKM1FnWjJWMElIUm9aU0JtZFd4c0lHdHViaUJtYjNJZ2FWeHVYRzRnSUNBZ0lDQWdJR2xtSUNocmJtNUpibVJwWTJWelcybGRXMnBkSUQwOVBTQnBLVnh1SUNBZ0lDQWdJQ0FnSUhaaGJDQTlJREF1TUR0Y2JpQWdJQ0FnSUNBZ1pXeHpaU0JwWmlBb2EyNXVSR2x6ZEdGdVkyVnpXMmxkVzJwZElDMGdjbWh2YzF0cFhTQThQU0F3TGpBcFhHNGdJQ0FnSUNBZ0lDQWdkbUZzSUQwZ01TNHdPMXh1SUNBZ0lDQWdJQ0JsYkhObFhHNGdJQ0FnSUNBZ0lDQWdkbUZzSUQwZ1RXRjBhQzVsZUhBb0xTZ29hMjV1UkdsemRHRnVZMlZ6VzJsZFcycGRJQzBnY21odmMxdHBYU2tnTHlCemFXZHRZWE5iYVYwcEtUdGNibHh1WEc0Z0lDQWdJQ0FnSUhKdmQzTmJhU0FxSUc1T1pXbG5hR0p2Y25NZ0t5QnFYU0E5SUdrN1hHNGdJQ0FnSUNBZ0lHTnZiSE5iYVNBcUlHNU9aV2xuYUdKdmNuTWdLeUJxWFNBOUlHdHVia2x1WkdsalpYTmJhVjFiYWwwN1hHNGdJQ0FnSUNBZ0lIWmhiSE5iYVNBcUlHNU9aV2xuYUdKdmNuTWdLeUJxWFNBOUlIWmhiRHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzVjYmlBZ0lDQnlaWFIxY200Z2UzSnZkM01zSUdOdmJITXNJSFpoYkhOOU8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWx1YVhScFlXeHBlbVVnWVNCbWRYcDZlU0J6YVcxd2JHbGphV0ZzSUhObGRDQmxiV0psWkdScGJtY3NJSFZ6YVc1bklHRWdjM0JsWTJsbWFXVmtYRzRnSUNBcUlHbHVhWFJwWVd4cGMyRjBhVzl1SUcxbGRHaHZaQ0JoYm1RZ2RHaGxiaUJ0YVc1cGJXbDZhVzVuSUhSb1pTQm1kWHA2ZVNCelpYUWdZM0p2YzNNZ1pXNTBjbTl3ZVZ4dUlDQWdLaUJpWlhSM1pXVnVJSFJvWlNBeExYTnJaV3hsZEc5dWN5QnZaaUIwYUdVZ2FHbG5hQ0JoYm1RZ2JHOTNJR1JwYldWdWMybHZibUZzSUdaMWVucDVJSE5wYlhCc2FXTnBZV3hjYmlBZ0lDb2djMlYwY3k1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2FXNXBkR2xoYkdsNlpWTnBiWEJzYVdOcFlXeFRaWFJGYldKbFpHUnBibWNvS1NCN1hHNGdJQ0FnWTI5dWMzUWdia1Z3YjJOb2N5QTlJSFJvYVhNdVoyVjBUa1Z3YjJOb2N5Z3BPMXh1WEc0Z0lDQWdZMjl1YzNRZ2UyNURiMjF3YjI1bGJuUnpmU0E5SUhSb2FYTTdYRzRnSUNBZ1kyOXVjM1FnWjNKaGNHaFdZV3gxWlhNZ1BTQjBhR2x6TG1keVlYQm9MbWRsZEZaaGJIVmxjeWdwTzF4dUlDQWdJR3hsZENCbmNtRndhRTFoZUNBOUlEQTdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQm5jbUZ3YUZaaGJIVmxjeTVzWlc1bmRHZzdJR2tyS3lrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnZG1Gc2RXVWdQU0JuY21Gd2FGWmhiSFZsYzF0cFhUdGNiaUFnSUNBZ0lHbG1JQ2huY21Gd2FFMWhlQ0E4SUdkeVlYQm9WbUZzZFdWelcybGRLVnh1SUNBZ0lDQWdJQ0JuY21Gd2FFMWhlQ0E5SUhaaGJIVmxPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHTnZibk4wSUdkeVlYQm9JRDBnZEdocGN5NW5jbUZ3YUM1dFlYQW9LSFpoYkhWbEtTQTlQaUI3WEc0Z0lDQWdJQ0JwWmlBb2RtRnNkV1VnUENCbmNtRndhRTFoZUNBdklHNUZjRzlqYUhNcFhHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBd08xeHVJQ0FnSUNBZ1pXeHpaVnh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdkbUZzZFdVN1hHNGdJQ0FnZlNrN1hHNWNiaUFnSUNBdkx5QlhaU2R5WlNCdWIzUWdZMjl0Y0hWMGFXNW5JSFJvWlNCemNHVmpkSEpoYkNCcGJtbDBhV0ZzYVhwaGRHbHZiaUJwYmlCMGFHbHpJR2x0Y0d4bGJXVnVkR0YwYVc5dVhHNGdJQ0FnTHk4Z2RXNTBhV3dnZDJVZ1pHVjBaWEp0YVc1bElHRWdZbVYwZEdWeUlHVnBaMlZ1ZG1Gc2RXVXZaV2xuWlc1MlpXTjBiM0lnWTI5dGNIVjBZWFJwYjI1Y2JpQWdJQ0F2THlCaGNIQnliMkZqYUZ4dUlDQWdJSFJvYVhNdVpXMWlaV1JrYVc1bklEMGdkWFJwYkhNdWVtVnliM01vWjNKaGNHZ3VibEp2ZDNNcExtMWhjQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RYUnBiSE11ZW1WeWIzTW9ia052YlhCdmJtVnVkSE1wTG0xaGNDZ29LU0E5UGlCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCMWRHbHNjeTUwWVhWU1lXNWtLSFJvYVhNdWNtRnVaRzl0S1NBcUlESXdJQ3NnTFRFd095QXZMeUJTWVc1a2IyMGdabkp2YlNBdE1UQWdkRzhnTVRCY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ0x5OGdSMlYwSUdkeVlYQm9JR1JoZEdFZ2FXNGdiM0prWlhKbFpDQjNZWGt1TGk1Y2JpQWdJQ0JqYjI1emRDQjNaV2xuYUhSek9pQnVkVzFpWlhKYlhTQTlJRnRkTzF4dUlDQWdJR052Ym5OMElHaGxZV1E2SUc1MWJXSmxjbHRkSUQwZ1cxMDdYRzRnSUNBZ1kyOXVjM1FnZEdGcGJEb2diblZ0WW1WeVcxMGdQU0JiWFR0Y2JpQWdJQ0JqYjI1emRDQnliM2REYjJ4V1lXeDFaWE1nUFNCbmNtRndhQzVuWlhSQmJHd29LVHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSEp2ZDBOdmJGWmhiSFZsY3k1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ1pXNTBjbmtnUFNCeWIzZERiMnhXWVd4MVpYTmJhVjA3WEc0Z0lDQWdJQ0JwWmlBb1pXNTBjbmt1ZG1Gc2RXVXBJSHRjYmlBZ0lDQWdJQ0FnZDJWcFoyaDBjeTV3ZFhOb0tHVnVkSEo1TG5aaGJIVmxLVHRjYmlBZ0lDQWdJQ0FnZEdGcGJDNXdkWE5vS0dWdWRISjVMbkp2ZHlrN1hHNGdJQ0FnSUNBZ0lHaGxZV1F1Y0hWemFDaGxiblJ5ZVM1amIyd3BPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNiaUFnSUNCamIyNXpkQ0JsY0c5amFITlFaWEpUWVcxd2JHVWdQU0IwYUdsekxtMWhhMlZGY0c5amFITlFaWEpUWVcxd2JHVW9kMlZwWjJoMGN5d2dia1Z3YjJOb2N5azdYRzVjYmlBZ0lDQnlaWFIxY200Z2UyaGxZV1FzSUhSaGFXd3NJR1Z3YjJOb2MxQmxjbE5oYlhCc1pYMDdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nUjJsMlpXNGdZU0J6WlhRZ2IyWWdkMlZwWjJoMGN5QmhibVFnYm5WdFltVnlJRzltSUdWd2IyTm9jeUJuWlc1bGNtRjBaU0IwYUdVZ2JuVnRZbVZ5SUc5bVhHNGdJQ0FxSUdWd2IyTm9jeUJ3WlhJZ2MyRnRjR3hsSUdadmNpQmxZV05vSUhkbGFXZG9kQzVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnYldGclpVVndiMk5vYzFCbGNsTmhiWEJzWlNoM1pXbG5hSFJ6T2lCdWRXMWlaWEpiWFN3Z2JrVndiMk5vY3pvZ2JuVnRZbVZ5S1NCN1hHNGdJQ0FnWTI5dWMzUWdjbVZ6ZFd4MElEMGdkWFJwYkhNdVptbHNiR1ZrS0hkbGFXZG9kSE11YkdWdVozUm9MQ0F0TVM0d0tUdGNiaUFnSUNCamIyNXpkQ0J0WVhnZ1BTQjFkR2xzY3k1dFlYZ29kMlZwWjJoMGN5azdYRzRnSUNBZ1kyOXVjM1FnYmxOaGJYQnNaWE1nUFNCM1pXbG5hSFJ6TG0xaGNDZ29keWtnUFQ0Z0tIY2dMeUJ0WVhncElDb2dia1Z3YjJOb2N5azdYRzRnSUNBZ2JsTmhiWEJzWlhNdVptOXlSV0ZqYUNnb2Jpd2dhU2tnUFQ0Z2UxeHVJQ0FnSUNBZ2FXWWdLRzRnUGlBd0tTQnlaWE4xYkhSYmFWMGdQU0J1UlhCdlkyaHpJQzhnYmxOaGJYQnNaWE5iYVYwN1hHNGdJQ0FnZlNrN1hHNGdJQ0FnY21WMGRYSnVJSEpsYzNWc2REdGNiaUFnZlZ4dVhHNGdJQzhxS2x4dUlDQWdLaUJCYzNOcFoyNXpJRzl3ZEdsdGFYcGhkR2x2YmlCemRHRjBaU0J3WVhKaGJXVjBaWEp6SUdaeWIyMGdZU0J3WVhKMGFXRnNJRzl3ZEdsdGFYcGhkR2x2YmlCemRHRjBaUzVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnWVhOemFXZHVUM0IwYVcxcGVtRjBhVzl1VTNSaGRHVlFZWEpoYldWMFpYSnpLSE4wWVhSbE9pQlFZWEowYVdGc1BFOXdkR2x0YVhwaGRHbHZibE4wWVhSbFBpa2dlMXh1SUNBZ0lFOWlhbVZqZEM1aGMzTnBaMjRvZEdocGN5NXZjSFJwYldsNllYUnBiMjVUZEdGMFpTd2djM1JoZEdVcE8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRk5sZEhNZ1lTQm1aWGNnYjNCMGFXMXBlbUYwYVc5dUlITjBZWFJsSUhCaGNtRnRaWFJsY25NZ2RHaGhkQ0JoY21VZ2JtVmpaWE56WVhKNUlHSmxabTl5WlNCbGJuUmxjbWx1WjF4dUlDQWdLaUIwYUdVZ2IzQjBhVzFwZW1GMGFXOXVJSE4wWlhBZ2JHOXZjQzVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnY0hKbGNHRnlaVVp2Y2s5d2RHbHRhWHBoZEdsdmJreHZiM0FvS1NCN1hHNGdJQ0FnTHk4Z1NIbHdaWEp3WVhKaGJXVjBaWEp6WEc0Z0lDQWdZMjl1YzNRZ2UzSmxjSFZzYzJsdmJsTjBjbVZ1WjNSb0xDQnNaV0Z5Ym1sdVoxSmhkR1VzSUc1bFoyRjBhWFpsVTJGdGNHeGxVbUYwWlgwZ1BTQjBhR2x6TzF4dVhHNGdJQ0FnWTI5dWMzUWdlMXh1SUNBZ0lDQWdaWEJ2WTJoelVHVnlVMkZ0Y0d4bExGeHVJQ0FnSUNBZ2FHVmhaRVZ0WW1Wa1pHbHVaeXhjYmlBZ0lDQWdJSFJoYVd4RmJXSmxaR1JwYm1jc1hHNGdJQ0FnZlNBOUlIUm9hWE11YjNCMGFXMXBlbUYwYVc5dVUzUmhkR1U3WEc1Y2JpQWdJQ0JqYjI1emRDQmthVzBnUFNCb1pXRmtSVzFpWldSa2FXNW5XekJkTG14bGJtZDBhRHRjYmlBZ0lDQmpiMjV6ZENCdGIzWmxUM1JvWlhJZ1BTQm9aV0ZrUlcxaVpXUmthVzVuTG14bGJtZDBhQ0E5UFQwZ2RHRnBiRVZ0WW1Wa1pHbHVaeTVzWlc1bmRHZzdYRzVjYmlBZ0lDQmpiMjV6ZENCbGNHOWphSE5RWlhKT1pXZGhkR2wyWlZOaGJYQnNaU0E5SUdWd2IyTm9jMUJsY2xOaGJYQnNaUzV0WVhBb1hHNGdJQ0FnSUNBb1pTa2dQVDRnWlNBdklHNWxaMkYwYVhabFUyRnRjR3hsVW1GMFpWeHVJQ0FnSUNrN1hHNGdJQ0FnWTI5dWMzUWdaWEJ2WTJoUFprNWxlSFJPWldkaGRHbDJaVk5oYlhCc1pTQTlJRnN1TGk1bGNHOWphSE5RWlhKT1pXZGhkR2wyWlZOaGJYQnNaVjA3WEc0Z0lDQWdZMjl1YzNRZ1pYQnZZMmhQWms1bGVIUlRZVzF3YkdVZ1BTQmJMaTR1WlhCdlkyaHpVR1Z5VTJGdGNHeGxYVHRjYmx4dUlDQWdJSFJvYVhNdVlYTnphV2R1VDNCMGFXMXBlbUYwYVc5dVUzUmhkR1ZRWVhKaGJXVjBaWEp6S0h0Y2JpQWdJQ0FnSUdWd2IyTm9UMlpPWlhoMFUyRnRjR3hsTEZ4dUlDQWdJQ0FnWlhCdlkyaFBaazVsZUhST1pXZGhkR2wyWlZOaGJYQnNaU3hjYmlBZ0lDQWdJR1Z3YjJOb2MxQmxjazVsWjJGMGFYWmxVMkZ0Y0d4bExGeHVJQ0FnSUNBZ2JXOTJaVTkwYUdWeUxGeHVJQ0FnSUNBZ2FXNXBkR2xoYkVGc2NHaGhPaUJzWldGeWJtbHVaMUpoZEdVc1hHNGdJQ0FnSUNCaGJIQm9ZVG9nYkdWaGNtNXBibWRTWVhSbExGeHVJQ0FnSUNBZ1oyRnRiV0U2SUhKbGNIVnNjMmx2YmxOMGNtVnVaM1JvTEZ4dUlDQWdJQ0FnWkdsdExGeHVJQ0FnSUgwcE8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWx1YVhScFlXeHBlbVZ6SUc5d2RHbHRhWHBoZEdsdmJpQnpkR0YwWlNCbWIzSWdjM1JsY0hkcGMyVWdiM0IwYVcxcGVtRjBhVzl1TGx4dUlDQWdLaTljYmlBZ2NISnBkbUYwWlNCcGJtbDBhV0ZzYVhwbFQzQjBhVzFwZW1GMGFXOXVLQ2tnZTF4dUlDQWdJQzh2SUVGc1oyOXlhWFJvYlNCemRHRjBaVnh1SUNBZ0lHTnZibk4wSUdobFlXUkZiV0psWkdScGJtY2dQU0IwYUdsekxtVnRZbVZrWkdsdVp6dGNiaUFnSUNCamIyNXpkQ0IwWVdsc1JXMWlaV1JrYVc1bklEMGdkR2hwY3k1bGJXSmxaR1JwYm1jN1hHNWNiaUFnSUNBdkx5QkpibWwwYVdGc2FYcGxaQ0JwYmlCcGJtbDBhV0ZzYVhwbFUybHRjR3hwWTJsaGJGTmxkRVZ0WW1Wa1pHbHVaeWdwWEc0Z0lDQWdZMjl1YzNRZ2UyaGxZV1FzSUhSaGFXd3NJR1Z3YjJOb2MxQmxjbE5oYlhCc1pYMGdQU0IwYUdsekxtOXdkR2x0YVhwaGRHbHZibE4wWVhSbE8xeHVYRzRnSUNBZ1kyOXVjM1FnYmtWd2IyTm9jeUE5SUhSb2FYTXVaMlYwVGtWd2IyTm9jeWdwTzF4dUlDQWdJR052Ym5OMElHNVdaWEowYVdObGN5QTlJSFJvYVhNdVozSmhjR2d1YmtOdmJITTdYRzVjYmlBZ0lDQmpiMjV6ZENCN1lTd2dZbjBnUFNCbWFXNWtRVUpRWVhKaGJYTW9kR2hwY3k1emNISmxZV1FzSUhSb2FYTXViV2x1UkdsemRDazdYRzVjYmlBZ0lDQjBhR2x6TG1GemMybG5iazl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxVR0Z5WVcxbGRHVnljeWg3WEc0Z0lDQWdJQ0JvWldGa1JXMWlaV1JrYVc1bkxGeHVJQ0FnSUNBZ2RHRnBiRVZ0WW1Wa1pHbHVaeXhjYmlBZ0lDQWdJR2hsWVdRc1hHNGdJQ0FnSUNCMFlXbHNMRnh1SUNBZ0lDQWdaWEJ2WTJoelVHVnlVMkZ0Y0d4bExGeHVJQ0FnSUNBZ1lTeGNiaUFnSUNBZ0lHSXNYRzRnSUNBZ0lDQnVSWEJ2WTJoekxGeHVJQ0FnSUNBZ2JsWmxjblJwWTJWekxGeHVJQ0FnSUgwcE8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWx0Y0hKdmRtVWdZVzRnWlcxaVpXUmthVzVuSUhWemFXNW5JSE4wYjJOb1lYTjBhV01nWjNKaFpHbGxiblFnWkdWelkyVnVkQ0IwYnlCdGFXNXBiV2w2WlNCMGFHVmNiaUFnSUNvZ1puVjZlbmtnYzJWMElHTnliM056SUdWdWRISnZjSGtnWW1WMGQyVmxiaUIwYUdVZ01TMXphMlZzWlhSdmJuTWdiMllnZEdobElHaHBaMmdnWkdsdFpXNXphVzl1WVd4Y2JpQWdJQ29nWVc1a0lHeHZkeUJrYVcxbGJuTnBiMjVoYkNCbWRYcDZlU0J6YVcxd2JHbGphV0ZzSUhObGRITXVJRWx1SUhCeVlXTjBhV05sSUhSb2FYTWdhWE1nWkc5dVpTQmllVnh1SUNBZ0tpQnpZVzF3YkdsdVp5QmxaR2RsY3lCaVlYTmxaQ0J2YmlCMGFHVnBjaUJ0WlcxaVpYSnphR2x3SUhOMGNtVnVaM1JvSUNoM2FYUm9JSFJvWlNBb01TMXdLU0IwWlhKdGMxeHVJQ0FnS2lCamIyMXBibWNnWm5KdmJTQnVaV2RoZEdsMlpTQnpZVzF3YkdsdVp5QnphVzFwYkdGeUlIUnZJSGR2Y21ReWRtVmpLUzVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnYjNCMGFXMXBlbVZNWVhsdmRYUlRkR1Z3S0c0NklHNTFiV0psY2lrZ2UxeHVJQ0FnSUdOdmJuTjBJSHR2Y0hScGJXbDZZWFJwYjI1VGRHRjBaWDBnUFNCMGFHbHpPMXh1SUNBZ0lHTnZibk4wSUh0Y2JpQWdJQ0FnSUdobFlXUXNYRzRnSUNBZ0lDQjBZV2xzTEZ4dUlDQWdJQ0FnYUdWaFpFVnRZbVZrWkdsdVp5eGNiaUFnSUNBZ0lIUmhhV3hGYldKbFpHUnBibWNzWEc0Z0lDQWdJQ0JsY0c5amFITlFaWEpUWVcxd2JHVXNYRzRnSUNBZ0lDQmxjRzlqYUU5bVRtVjRkRk5oYlhCc1pTeGNiaUFnSUNBZ0lHVndiMk5vVDJaT1pYaDBUbVZuWVhScGRtVlRZVzF3YkdVc1hHNGdJQ0FnSUNCbGNHOWphSE5RWlhKT1pXZGhkR2wyWlZOaGJYQnNaU3hjYmlBZ0lDQWdJRzF2ZG1WUGRHaGxjaXhjYmlBZ0lDQWdJR2x1YVhScFlXeEJiSEJvWVN4Y2JpQWdJQ0FnSUdGc2NHaGhMRnh1SUNBZ0lDQWdaMkZ0YldFc1hHNGdJQ0FnSUNCaExGeHVJQ0FnSUNBZ1lpeGNiaUFnSUNBZ0lHUnBiU3hjYmlBZ0lDQWdJRzVGY0c5amFITXNYRzRnSUNBZ0lDQnVWbVZ5ZEdsalpYTXNYRzRnSUNBZ2ZTQTlJRzl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxPMXh1WEc0Z0lDQWdZMjl1YzNRZ1kyeHBjRlpoYkhWbElEMGdOQzR3TzF4dVhHNGdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCbGNHOWphSE5RWlhKVFlXMXdiR1V1YkdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNBZ0lHbG1JQ2hsY0c5amFFOW1UbVY0ZEZOaGJYQnNaVnRwWFNBK0lHNHBYRzRnSUNBZ0lDQWdJR052Ym5ScGJuVmxPMXh1WEc1Y2JpQWdJQ0FnSUdOdmJuTjBJR29nUFNCb1pXRmtXMmxkTzF4dUlDQWdJQ0FnWTI5dWMzUWdheUE5SUhSaGFXeGJhVjA3WEc1Y2JpQWdJQ0FnSUdOdmJuTjBJR04xY25KbGJuUWdQU0JvWldGa1JXMWlaV1JrYVc1blcycGRPMXh1SUNBZ0lDQWdZMjl1YzNRZ2IzUm9aWElnUFNCMFlXbHNSVzFpWldSa2FXNW5XMnRkTzF4dVhHNGdJQ0FnSUNCamIyNXpkQ0JrYVhOMFUzRjFZWEpsWkNBOUlISkVhWE4wS0dOMWNuSmxiblFzSUc5MGFHVnlLVHRjYmx4dUlDQWdJQ0FnYkdWMElHZHlZV1JEYjJWbVppQTlJREE3WEc0Z0lDQWdJQ0JwWmlBb1pHbHpkRk54ZFdGeVpXUWdQaUF3S1NCN1hHNGdJQ0FnSUNBZ0lHZHlZV1JEYjJWbVppQTlJQzB5TGpBZ0tpQmhJQ29nWWlBcUlFMWhkR2d1Y0c5M0tHUnBjM1JUY1hWaGNtVmtMQ0JpSUMwZ01TNHdLVHRjYmlBZ0lDQWdJQ0FnWjNKaFpFTnZaV1ptSUM4OUlHRWdLaUJOWVhSb0xuQnZkeWhrYVhOMFUzRjFZWEpsWkN3Z1lpa2dLeUF4TGpBN1hHNGdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHUWdQU0F3T3lCa0lEd2daR2x0T3lCa0t5c3BJSHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdaM0poWkVRZ1BTQmpiR2x3S0dkeVlXUkRiMlZtWmlBcUlDaGpkWEp5Wlc1MFcyUmRJQzBnYjNSb1pYSmJaRjBwTENCamJHbHdWbUZzZFdVcE8xeHVJQ0FnSUNBZ0lDQmpkWEp5Wlc1MFcyUmRJQ3M5SUdkeVlXUkVJQ29nWVd4d2FHRTdYRzRnSUNBZ0lDQWdJR2xtSUNodGIzWmxUM1JvWlhJcFhHNGdJQ0FnSUNBZ0lDQWdiM1JvWlhKYlpGMGdLejBnTFdkeVlXUkVJQ29nWVd4d2FHRTdYRzRnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJR1Z3YjJOb1QyWk9aWGgwVTJGdGNHeGxXMmxkSUNzOUlHVndiMk5vYzFCbGNsTmhiWEJzWlZ0cFhUdGNibHh1SUNBZ0lDQWdZMjl1YzNRZ2JrNWxaMU5oYlhCc1pYTWdQU0JOWVhSb0xtWnNiMjl5S0Z4dUlDQWdJQ0FnSUNBb2JpQXRJR1Z3YjJOb1QyWk9aWGgwVG1WbllYUnBkbVZUWVcxd2JHVmJhVjBwSUM4Z1pYQnZZMmh6VUdWeVRtVm5ZWFJwZG1WVFlXMXdiR1ZiYVYxY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNBZ0lHWnZjaUFvYkdWMElIQWdQU0F3T3lCd0lEd2diazVsWjFOaGJYQnNaWE03SUhBckt5a2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQnJJRDBnZFhScGJITXVkR0YxVW1GdVpFbHVkQ2h1Vm1WeWRHbGpaWE1zSUhSb2FYTXVjbUZ1Wkc5dEtUdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ2IzUm9aWElnUFNCMFlXbHNSVzFpWldSa2FXNW5XMnRkTzF4dVhHNGdJQ0FnSUNBZ0lHTnZibk4wSUdScGMzUlRjWFZoY21Wa0lEMGdja1JwYzNRb1kzVnljbVZ1ZEN3Z2IzUm9aWElwTzF4dVhHNGdJQ0FnSUNBZ0lHeGxkQ0JuY21Ga1EyOWxabVlnUFNBd0xqQTdYRzRnSUNBZ0lDQWdJR2xtSUNoa2FYTjBVM0YxWVhKbFpDQStJREF1TUNrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2R5WVdSRGIyVm1aaUE5SURJdU1DQXFJR2RoYlcxaElDb2dZanRjYmlBZ0lDQWdJQ0FnSUNCbmNtRmtRMjlsWm1ZZ0x6MWNiaUFnSUNBZ0lDQWdJQ0FnSUNnd0xqQXdNU0FySUdScGMzUlRjWFZoY21Wa0tTQXFJQ2hoSUNvZ1RXRjBhQzV3YjNjb1pHbHpkRk54ZFdGeVpXUXNJR0lwSUNzZ01TazdYRzRnSUNBZ0lDQWdJSDBnWld4elpTQnBaaUFvYWlBOVBUMGdheWtnZTF4dUlDQWdJQ0FnSUNBZ0lHTnZiblJwYm5WbE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnWm05eUlDaHNaWFFnWkNBOUlEQTdJR1FnUENCa2FXMDdJR1FyS3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR3hsZENCbmNtRmtSQ0E5SURRdU1EdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb1ozSmhaRU52WldabUlENGdNQzR3S1Z4dUlDQWdJQ0FnSUNBZ0lDQWdaM0poWkVRZ1BTQmpiR2x3S0dkeVlXUkRiMlZtWmlBcUlDaGpkWEp5Wlc1MFcyUmRJQzBnYjNSb1pYSmJaRjBwTENCamJHbHdWbUZzZFdVcE8xeHVYRzRnSUNBZ0lDQWdJQ0FnWTNWeWNtVnVkRnRrWFNBclBTQm5jbUZrUkNBcUlHRnNjR2hoTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOVhHNGdJQ0FnSUNCbGNHOWphRTltVG1WNGRFNWxaMkYwYVhabFUyRnRjR3hsVzJsZElDczlJRzVPWldkVFlXMXdiR1Z6SUNvZ1pYQnZZMmh6VUdWeVRtVm5ZWFJwZG1WVFlXMXdiR1ZiYVYwN1hHNGdJQ0FnZlZ4dUlDQWdJRzl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxMbUZzY0doaElEMGdhVzVwZEdsaGJFRnNjR2hoSUNvZ0tERXVNQ0F0SUc0Z0x5QnVSWEJ2WTJoektUdGNibHh1SUNBZ0lHOXdkR2x0YVhwaGRHbHZibE4wWVhSbExtTjFjbkpsYm5SRmNHOWphQ0FyUFNBeE8xeHVJQ0FnSUhKbGRIVnliaUJvWldGa1JXMWlaV1JrYVc1bk8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWx0Y0hKdmRtVWdZVzRnWlcxaVpXUmthVzVuSUhWemFXNW5JSE4wYjJOb1lYTjBhV01nWjNKaFpHbGxiblFnWkdWelkyVnVkQ0IwYnlCdGFXNXBiV2w2WlNCMGFHVmNiaUFnSUNvZ1puVjZlbmtnYzJWMElHTnliM056SUdWdWRISnZjSGtnWW1WMGQyVmxiaUIwYUdVZ01TMXphMlZzWlhSdmJuTWdiMllnZEdobElHaHBaMmdnWkdsdFpXNXphVzl1WVd4Y2JpQWdJQ29nWVc1a0lHeHZkeUJrYVcxbGJuTnBiMjVoYkNCbWRYcDZlU0J6YVcxd2JHbGphV0ZzSUhObGRITXVJRWx1SUhCeVlXTjBhV05sSUhSb2FYTWdhWE1nWkc5dVpTQmllVnh1SUNBZ0tpQnpZVzF3YkdsdVp5QmxaR2RsY3lCaVlYTmxaQ0J2YmlCMGFHVnBjaUJ0WlcxaVpYSnphR2x3SUhOMGNtVnVaM1JvSUNoM2FYUm9JSFJvWlNBb01TMXdLU0IwWlhKdGMxeHVJQ0FnS2lCamIyMXBibWNnWm5KdmJTQnVaV2RoZEdsMlpTQnpZVzF3YkdsdVp5QnphVzFwYkdGeUlIUnZJSGR2Y21ReWRtVmpLUzVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnYjNCMGFXMXBlbVZNWVhsdmRYUkJjM2x1WXloY2JpQWdJQ0JsY0c5amFFTmhiR3hpWVdOck9pQW9aWEJ2WTJoT2RXMWlaWEk2SUc1MWJXSmxjaWtnUFQ0Z2RtOXBaQ0I4SUdKdmIyeGxZVzRnUFNBb0tTQTlQaUIwY25WbFhHNGdJQ2s2SUZCeWIyMXBjMlU4WW05dmJHVmhiajRnZTF4dUlDQWdJSEpsZEhWeWJpQnVaWGNnVUhKdmJXbHpaU2dvY21WemIyeDJaU3dnY21WcVpXTjBLU0E5UGlCN1hHNGdJQ0FnSUNCamIyNXpkQ0J6ZEdWd0lEMGdZWE41Ym1NZ0tDa2dQVDRnZTF4dUlDQWdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJSHR1UlhCdlkyaHpMQ0JqZFhKeVpXNTBSWEJ2WTJoOUlEMGdkR2hwY3k1dmNIUnBiV2w2WVhScGIyNVRkR0YwWlR0Y2JpQWdJQ0FnSUNBZ0lDQjBhR2x6TG1WdFltVmtaR2x1WnlBOUlIUm9hWE11YjNCMGFXMXBlbVZNWVhsdmRYUlRkR1Z3S0dOMWNuSmxiblJGY0c5amFDazdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdaWEJ2WTJoRGIyMXdiR1YwWldRZ1BTQjBhR2x6TG05d2RHbHRhWHBoZEdsdmJsTjBZWFJsTG1OMWNuSmxiblJGY0c5amFEdGNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQnphRzkxYkdSVGRHOXdJRDBnWlhCdlkyaERZV3hzWW1GamF5aGxjRzlqYUVOdmJYQnNaWFJsWkNrZ1BUMDlJR1poYkhObE8xeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElHbHpSbWx1YVhOb1pXUWdQU0JsY0c5amFFTnZiWEJzWlhSbFpDQTlQVDBnYmtWd2IyTm9jenRjYmlBZ0lDQWdJQ0FnSUNCcFppQW9JWE5vYjNWc1pGTjBiM0FnSmlZZ0lXbHpSbWx1YVhOb1pXUXBYRzRnSUNBZ0lDQWdJQ0FnSUNCelpYUlVhVzFsYjNWMEtDZ3BJRDArSUhOMFpYQW9LU3dnTUNrN1hHNGdJQ0FnSUNBZ0lDQWdaV3h6WlZ4dUlDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlISmxjMjlzZG1Vb2FYTkdhVzVwYzJobFpDazdYRzRnSUNBZ0lDQWdJSDBnWTJGMFkyZ2dLR1Z5Y2lrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsYW1WamRDaGxjbklwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOU8xeHVJQ0FnSUNBZ2MyVjBWR2x0Wlc5MWRDZ29LU0E5UGlCemRHVndLQ2tzSURBcE8xeHVJQ0FnSUgwcE8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWx0Y0hKdmRtVWdZVzRnWlcxaVpXUmthVzVuSUhWemFXNW5JSE4wYjJOb1lYTjBhV01nWjNKaFpHbGxiblFnWkdWelkyVnVkQ0IwYnlCdGFXNXBiV2w2WlNCMGFHVmNiaUFnSUNvZ1puVjZlbmtnYzJWMElHTnliM056SUdWdWRISnZjSGtnWW1WMGQyVmxiaUIwYUdVZ01TMXphMlZzWlhSdmJuTWdiMllnZEdobElHaHBaMmdnWkdsdFpXNXphVzl1WVd4Y2JpQWdJQ29nWVc1a0lHeHZkeUJrYVcxbGJuTnBiMjVoYkNCbWRYcDZlU0J6YVcxd2JHbGphV0ZzSUhObGRITXVJRWx1SUhCeVlXTjBhV05sSUhSb2FYTWdhWE1nWkc5dVpTQmllVnh1SUNBZ0tpQnpZVzF3YkdsdVp5QmxaR2RsY3lCaVlYTmxaQ0J2YmlCMGFHVnBjaUJ0WlcxaVpYSnphR2x3SUhOMGNtVnVaM1JvSUNoM2FYUm9JSFJvWlNBb01TMXdLU0IwWlhKdGMxeHVJQ0FnS2lCamIyMXBibWNnWm5KdmJTQnVaV2RoZEdsMlpTQnpZVzF3YkdsdVp5QnphVzFwYkdGeUlIUnZJSGR2Y21ReWRtVmpLUzVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnYjNCMGFXMXBlbVZNWVhsdmRYUW9YRzRnSUNBZ1pYQnZZMmhEWVd4c1ltRmphem9nS0dWd2IyTm9UblZ0WW1WeU9pQnVkVzFpWlhJcElEMCtJSFp2YVdRZ2ZDQmliMjlzWldGdUlEMGdLQ2tnUFQ0Z2RISjFaVnh1SUNBcE9pQldaV04wYjNKeklIdGNiaUFnSUNCc1pYUWdhWE5HYVc1cGMyaGxaQ0E5SUdaaGJITmxPMXh1SUNBZ0lHeGxkQ0JsYldKbFpHUnBibWM2SUZabFkzUnZjbk1nUFNCYlhUdGNiaUFnSUNCM2FHbHNaU0FvSVdselJtbHVhWE5vWldRcElIdGNiaUFnSUNBZ0lHTnZibk4wSUh0dVJYQnZZMmh6TENCamRYSnlaVzUwUlhCdlkyaDlJRDBnZEdocGN5NXZjSFJwYldsNllYUnBiMjVUZEdGMFpUdGNiaUFnSUNBZ0lHVnRZbVZrWkdsdVp5QTlJSFJvYVhNdWIzQjBhVzFwZW1WTVlYbHZkWFJUZEdWd0tHTjFjbkpsYm5SRmNHOWphQ2s3WEc0Z0lDQWdJQ0JqYjI1emRDQmxjRzlqYUVOdmJYQnNaWFJsWkNBOUlIUm9hWE11YjNCMGFXMXBlbUYwYVc5dVUzUmhkR1V1WTNWeWNtVnVkRVZ3YjJOb08xeHVJQ0FnSUNBZ1kyOXVjM1FnYzJodmRXeGtVM1J2Y0NBOUlHVndiMk5vUTJGc2JHSmhZMnNvWlhCdlkyaERiMjF3YkdWMFpXUXBJRDA5UFNCbVlXeHpaVHRjYmlBZ0lDQWdJR2x6Um1sdWFYTm9aV1FnUFNCbGNHOWphRU52YlhCc1pYUmxaQ0E5UFQwZ2JrVndiMk5vY3lCOGZDQnphRzkxYkdSVGRHOXdPMXh1SUNBZ0lIMWNiaUFnSUNCeVpYUjFjbTRnWlcxaVpXUmthVzVuTzF4dUlDQjlYRzVjYmlBZ0x5b3FYRzRnSUNBcUlFZGxkSE1nZEdobElHNTFiV0psY2lCdlppQmxjRzlqYUhNZ1ptOXlJRzl3ZEdsdGFYcHBibWNnZEdobElIQnliMnBsWTNScGIyNHVYRzRnSUNBcUlFNVBWRVU2SUZSb2FYTWdhR1YxY21semRHbGpJR1JwWm1abGNuTWdabkp2YlNCMGFHVWdjSGwwYUc5dUlIWmxjbk5wYjI1Y2JpQWdJQ292WEc0Z0lIQjFZbXhwWXlCblpYUk9SWEJ2WTJoektDa2dlMXh1SUNBZ0lHTnZibk4wSUdkeVlYQm9JRDBnZEdocGN5NW5jbUZ3YUR0Y2JseHVJQ0FnSUdsbUlDaDBhR2x6TG01RmNHOWphSE1nUGlBd0tWeHVJQ0FnSUNBZ2NtVjBkWEp1SUhSb2FYTXVia1Z3YjJOb2N6dGNibHh1WEc0Z0lDQWdhV1lnS0NGbmNtRndhQ2xjYmlBZ0lDQWdJSEpsZEhWeWJpQXlNREE3WEc1Y2JseHVJQ0FnSUdOdmJuTjBJR3hsYm1kMGFDQTlJR2R5WVhCb0xtNVNiM2R6TzF4dUlDQWdJR2xtSUNoc1pXNW5kR2dnUEQwZ01qVXdNQ2xjYmlBZ0lDQWdJSEpsZEhWeWJpQTFNREE3WEc0Z0lDQWdaV3h6WlNCcFppQW9iR1Z1WjNSb0lEdzlJRFV3TURBcFhHNGdJQ0FnSUNCeVpYUjFjbTRnTkRBd08xeHVJQ0FnSUdWc2MyVWdhV1lnS0d4bGJtZDBhQ0E4UFNBM05UQXdLVnh1SUNBZ0lDQWdjbVYwZFhKdUlETXdNRHRjYmlBZ0lDQmxiSE5sWEc0Z0lDQWdJQ0J5WlhSMWNtNGdNakF3TzF4dUlDQjlYRzU5WEc1Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCbGRXTnNhV1JsWVc0b2VEb2dWbVZqZEc5eUxDQjVPaUJXWldOMGIzSXBJSHRjYmlBZ2JHVjBJSEpsYzNWc2RDQTlJREE3WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dlQzVzWlc1bmRHZzdJR2tyS3lsY2JpQWdJQ0J5WlhOMWJIUWdLejBnS0hoYmFWMGdMU0I1VzJsZEtTQXFLaUF5TzF4dVhHNGdJSEpsZEhWeWJpQk5ZWFJvTG5OeGNuUW9jbVZ6ZFd4MEtUdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUc1MWJXVnlhV01vZURvZ2JuVnRZbVZ5TENCNU9pQnVkVzFpWlhJcElIdGNiaUFnWTI5dWMzUWdjbVZ6ZFd4MElEMGdUV0YwYUM1aFluTW9lQ0F0SUhrcE8xeHVJQ0J5WlhSMWNtNGdjbVZ6ZFd4ME8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWTI5emFXNWxLSGc2SUZabFkzUnZjaXdnZVRvZ1ZtVmpkRzl5S1NCN1hHNGdJR3hsZENCeVpYTjFiSFFnUFNBd0xqQTdYRzRnSUd4bGRDQnViM0p0V0NBOUlEQXVNRHRjYmlBZ2JHVjBJRzV2Y20xWklEMGdNQzR3TzF4dVhHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnZUM1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lISmxjM1ZzZENBclBTQjRXMmxkSUNvZ2VWdHBYVHRjYmlBZ0lDQnViM0p0V0NBclBTQjRXMmxkSUNvcUlESTdYRzRnSUNBZ2JtOXliVmtnS3owZ2VWdHBYU0FxS2lBeU8xeHVJQ0I5WEc1Y2JpQWdhV1lnS0c1dmNtMVlJRDA5UFNBd0lDWW1JRzV2Y20xWklEMDlQU0F3S1Z4dUlDQWdJSEpsZEhWeWJpQXdPMXh1SUNCbGJITmxJR2xtSUNodWIzSnRXQ0E5UFQwZ01DQjhmQ0J1YjNKdFdTQTlQVDBnTUNsY2JpQWdJQ0J5WlhSMWNtNGdNUzR3TzF4dUlDQmxiSE5sWEc0Z0lDQWdjbVYwZFhKdUlERXVNQ0F0SUhKbGMzVnNkQ0F2SUUxaGRHZ3VjM0Z5ZENodWIzSnRXQ0FxSUc1dmNtMVpLVHRjYm4xY2JseHVMeW9xWEc0Z0tpQkJiaUJwYm5SbGNtWmhZMlVnY21Wd2NtVnpaVzUwYVc1bklIUm9aU0J2Y0hScGJXbDZZWFJwYjI0Z2MzUmhkR1VnZEhKaFkydGxaQ0JpWlhSM1pXVnVJSE4wWlhCeklHOW1YRzRnS2lCMGFHVWdVMGRFSUc5d2RHbHRhWHBoZEdsdmJseHVJQ292WEc1amJHRnpjeUJQY0hScGJXbDZZWFJwYjI1VGRHRjBaU0I3WEc0Z0lHTjFjbkpsYm5SRmNHOWphQ0E5SURBN1hHNWNiaUFnTHk4Z1JHRjBZU0IwY21GamEyVmtJR1IxY21sdVp5QnZjSFJwYldsNllYUnBiMjRnYzNSbGNITXVYRzRnSUdobFlXUkZiV0psWkdScGJtYzZJRzUxYldKbGNsdGRXMTBnUFNCYlhUdGNiaUFnZEdGcGJFVnRZbVZrWkdsdVp6b2diblZ0WW1WeVcxMWJYU0E5SUZ0ZE8xeHVJQ0JvWldGa09pQnVkVzFpWlhKYlhTQTlJRnRkTzF4dUlDQjBZV2xzT2lCdWRXMWlaWEpiWFNBOUlGdGRPMXh1SUNCbGNHOWphSE5RWlhKVFlXMXdiR1U2SUc1MWJXSmxjbHRkSUQwZ1cxMDdYRzRnSUdWd2IyTm9UMlpPWlhoMFUyRnRjR3hsT2lCdWRXMWlaWEpiWFNBOUlGdGRPMXh1SUNCbGNHOWphRTltVG1WNGRFNWxaMkYwYVhabFUyRnRjR3hsT2lCdWRXMWlaWEpiWFNBOUlGdGRPMXh1SUNCbGNHOWphSE5RWlhKT1pXZGhkR2wyWlZOaGJYQnNaVG9nYm5WdFltVnlXMTBnUFNCYlhUdGNiaUFnYlc5MlpVOTBhR1Z5SUQwZ2RISjFaVHRjYmlBZ2FXNXBkR2xoYkVGc2NHaGhJRDBnTVM0d08xeHVJQ0JoYkhCb1lTQTlJREV1TUR0Y2JpQWdaMkZ0YldFZ1BTQXhMakE3WEc0Z0lHRWdQU0F4TGpVM05qazBNelEyTURNeE1UTXdOemM3WEc0Z0lHSWdQU0F3TGpnNU5UQTJNRGczTnpreE1EazNNek03WEc0Z0lHUnBiU0E5SURJN1hHNGdJRzVGY0c5amFITWdQU0ExTURBN1hHNGdJRzVXWlhKMGFXTmxjeUE5SURBN1hHNTlYRzVjYmk4cUtseHVJQ29nVTNSaGJtUmhjbVFnWTJ4aGJYQnBibWNnYjJZZ1lTQjJZV3gxWlNCcGJuUnZJR0VnWm1sNFpXUWdjbUZ1WjJWY2JpQXFMMXh1Wm5WdVkzUnBiMjRnWTJ4cGNDaDRPaUJ1ZFcxaVpYSXNJR05zYVhCV1lXeDFaVG9nYm5WdFltVnlLU0I3WEc0Z0lHbG1JQ2g0SUQ0Z1kyeHBjRlpoYkhWbEtTQnlaWFIxY200Z1kyeHBjRlpoYkhWbE8xeHVJQ0JsYkhObElHbG1JQ2g0SUR3Z0xXTnNhWEJXWVd4MVpTa2djbVYwZFhKdUlDMWpiR2x3Vm1Gc2RXVTdYRzRnSUdWc2MyVWdjbVYwZFhKdUlIZzdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1VtVmtkV05sWkNCRmRXTnNhV1JsWVc0Z1pHbHpkR0Z1WTJVdVhHNGdLaTljYm1aMWJtTjBhVzl1SUhKRWFYTjBLSGc2SUc1MWJXSmxjbHRkTENCNU9pQnVkVzFpWlhKYlhTa2dlMXh1SUNCc1pYUWdjbVZ6ZFd4MElEMGdNQzR3TzF4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSGd1YkdWdVozUm9PeUJwS3lzcFhHNGdJQ0FnY21WemRXeDBJQ3M5SUUxaGRHZ3VjRzkzS0hoYmFWMGdMU0I1VzJsZExDQXlLVHRjYmx4dUlDQnlaWFIxY200Z2NtVnpkV3gwTzF4dWZWeHVYRzR2S2lwY2JpQXFJRVpwZENCaExDQmlJSEJoY21GdGN5Qm1iM0lnZEdobElHUnBabVpsY21WdWRHbGhZbXhsSUdOMWNuWmxJSFZ6WldRZ2FXNGdiRzkzWlhKY2JpQXFJR1JwYldWdWMybHZibUZzSUdaMWVucDVJSE5wYlhCc2FXTnBZV3dnWTI5dGNHeGxlQ0JqYjI1emRISjFZM1JwYjI0dUlGZGxJSGRoYm5RZ2RHaGxYRzRnS2lCemJXOXZkR2dnWTNWeWRtVWdLR1p5YjIwZ1lTQndjbVV0WkdWbWFXNWxaQ0JtWVcxcGJIa2dkMmwwYUNCemFXMXdiR1VnWjNKaFpHbGxiblFwSUhSb1lYUmNiaUFxSUdKbGMzUWdiV0YwWTJobGN5QmhiaUJ2Wm1aelpYUWdaWGh3YjI1bGJuUnBZV3dnWkdWallYa3VYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCbWFXNWtRVUpRWVhKaGJYTW9jM0J5WldGa09pQnVkVzFpWlhJc0lHMXBia1JwYzNRNklHNTFiV0psY2lrZ2UxeHVJQ0JqYjI1emRDQmpkWEoyWlNBOUlDaGJZU3dnWWwwNklHNTFiV0psY2x0ZEtTQTlQaUFvZURvZ2JuVnRZbVZ5S1NBOVBpQjdYRzRnSUNBZ2NtVjBkWEp1SURFdU1DQXZJQ2d4TGpBZ0t5QmhJQ29nZUNBcUtpQW9NaUFxSUdJcEtUdGNiaUFnZlR0Y2JseHVJQ0JqYjI1emRDQjRkaUE5SUhWMGFXeHpYRzRnSUNBZ0xteHBibVZoY2lnd0xDQnpjSEpsWVdRZ0tpQXpMQ0F6TURBcFhHNGdJQ0FnTG0xaGNDZ29kbUZzS1NBOVBpQW9kbUZzSUR3Z2JXbHVSR2x6ZENBL0lERXVNQ0E2SUhaaGJDa3BPMXh1WEc0Z0lHTnZibk4wSUhsMklEMGdkWFJwYkhNdWVtVnliM01vZUhZdWJHVnVaM1JvS1M1dFlYQW9LSFpoYkN3Z2FXNWtaWGdwSUQwK0lIdGNiaUFnSUNCamIyNXpkQ0JuZEdVZ1BTQjRkbHRwYm1SbGVGMGdQajBnYldsdVJHbHpkRHRjYmlBZ0lDQnlaWFIxY200Z1ozUmxJRDhnVFdGMGFDNWxlSEFvTFNoNGRsdHBibVJsZUYwZ0xTQnRhVzVFYVhOMEtTQXZJSE53Y21WaFpDa2dPaUIyWVd3N1hHNGdJSDBwTzF4dVhHNGdJR052Ym5OMElHbHVhWFJwWVd4V1lXeDFaWE1nUFNCYk1DNDFMQ0F3TGpWZE8xeHVJQ0JqYjI1emRDQmtZWFJoSUQwZ2UzZzZJSGgyTENCNU9pQjVkbjA3WEc1Y2JpQWdMeThnUkdWbVlYVnNkQ0J2Y0hScGIyNXpJR1p2Y2lCMGFHVWdZV3huYjNKcGRHaHRJQ2htY205dElHZHBkR2gxWWlCbGVHRnRjR3hsS1Z4dUlDQmpiMjV6ZENCdmNIUnBiMjV6SUQwZ2UxeHVJQ0FnSUdSaGJYQnBibWM2SURFdU5TeGNiaUFnSUNCcGJtbDBhV0ZzVm1Gc2RXVnpMRnh1SUNBZ0lHZHlZV1JwWlc1MFJHbG1abVZ5Wlc1alpUb2dNVEJsTFRJc1hHNGdJQ0FnYldGNFNYUmxjbUYwYVc5dWN6b2dNVEF3TEZ4dUlDQWdJR1Z5Y205eVZHOXNaWEpoYm1ObE9pQXhNR1V0TXl4Y2JpQWdmVHRjYmx4dUlDQXZMeUJsYzJ4cGJuUXRaR2x6WVdKc1pTMXVaWGgwTFd4cGJtVWdibVYzTFdOaGNGeHVJQ0JqYjI1emRDQjdjR0Z5WVcxbGRHVnlWbUZzZFdWemZTQTlJRXhOS0dSaGRHRXNJR04xY25abExDQnZjSFJwYjI1ektUdGNiaUFnWTI5dWMzUWdXMkVzSUdKZElEMGdjR0Z5WVcxbGRHVnlWbUZzZFdWeklHRnpJRzUxYldKbGNsdGRPMXh1SUNCeVpYUjFjbTRnZTJFc0lHSjlPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGVnVaR1Z5SUhSb1pTQmhjM04xYlhCMGFXOXVJRzltSUdOaGRHVm5iM0pwWTJGc0lHUnBjM1JoYm1ObElHWnZjaUIwYUdVZ2FXNTBaWEp6WldOMGFXNW5YRzRnS2lCemFXMXdiR2xqYVdGc0lITmxkQ0J3WlhKbWIzSnRJR0VnWm1GemRDQnBiblJsY25ObFkzUnBiMjR1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQm1ZWE4wU1c1MFpYSnpaV04wYVc5dUtGeHVJQ0JuY21Gd2FEb2diV0YwY21sNExsTndZWEp6WlUxaGRISnBlQ3hjYmlBZ2RHRnlaMlYwT2lCdWRXMWlaWEpiWFN4Y2JpQWdkVzVyYm05M2JrUnBjM1FnUFNBeExqQXNYRzRnSUdaaGNrUnBjM1FnUFNBMUxqQmNiaWtnZTF4dUlDQnlaWFIxY200Z1ozSmhjR2d1YldGd0tDaDJZV3gxWlN3Z2NtOTNMQ0JqYjJ3cElEMCtJSHRjYmlBZ0lDQnBaaUFvZEdGeVoyVjBXM0p2ZDEwZ1BUMDlJQzB4SUh4OElIUmhjbWRsZEZ0amIyeGRJRDA5UFNBdE1TbGNiaUFnSUNBZ0lISmxkSFZ5YmlCMllXeDFaU0FxSUUxaGRHZ3VaWGh3S0MxMWJtdHViM2R1UkdsemRDazdYRzRnSUNBZ1pXeHpaU0JwWmlBb2RHRnlaMlYwVzNKdmQxMGdJVDA5SUhSaGNtZGxkRnRqYjJ4ZEtWeHVJQ0FnSUNBZ2NtVjBkWEp1SUhaaGJIVmxJQ29nVFdGMGFDNWxlSEFvTFdaaGNrUnBjM1FwTzF4dUlDQWdJR1ZzYzJWY2JpQWdJQ0FnSUhKbGRIVnliaUIyWVd4MVpUdGNiaUFnZlNrN1hHNTlYRzVjYmk4cUtseHVJQ29nVW1WelpYUWdkR2hsSUd4dlkyRnNJR052Ym01bFkzUnBkbWwwZVNCeVpYRjFhWEpsYldWdWRDQXRMU0JsWVdOb0lHUmhkR0VnYzJGdGNHeGxJSE5vYjNWc1pGeHVJQ29nYUdGMlpTQmpiMjF3YkdWMFpTQmpiMjVtYVdSbGJtTmxJR2x1SUdGMElHeGxZWE4wSUc5dVpTQXhMWE5wYlhCc1pYZ2dhVzRnZEdobElITnBiWEJzYVdOcFlXd2djMlYwTGx4dUlDb2dWMlVnWTJGdUlHVnVabTl5WTJVZ2RHaHBjeUJpZVNCc2IyTmhiR3g1SUhKbGMyTmhiR2x1WnlCamIyNW1hV1JsYm1ObGN5d2dZVzVrSUhSb1pXNGdjbVZ0WlhKbmFXNW5JSFJvWlZ4dUlDb2daR2xtWm1WeVpXNTBJR3h2WTJGc0lITnBiWEJzYVdOcFlXd2djMlYwY3lCMGIyZGxkR2hsY2k1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSEpsYzJWMFRHOWpZV3hEYjI1dVpXTjBhWFpwZEhrb2MybHRjR3hwWTJsaGJGTmxkRG9nYldGMGNtbDRMbE53WVhKelpVMWhkSEpwZUNrZ2UxeHVJQ0J6YVcxd2JHbGphV0ZzVTJWMElEMGdiV0YwY21sNExtNXZjbTFoYkdsNlpTaHphVzF3YkdsamFXRnNVMlYwTENCdFlYUnlhWGd1VG05eWJWUjVjR1V1YldGNEtUdGNiaUFnWTI5dWMzUWdkSEpoYm5Od2IzTmxJRDBnYldGMGNtbDRMblJ5WVc1emNHOXpaU2h6YVcxd2JHbGphV0ZzVTJWMEtUdGNiaUFnWTI5dWMzUWdjSEp2WkUxaGRISnBlQ0E5SUcxaGRISnBlQzV3WVdseWQybHpaVTExYkhScGNHeDVLSFJ5WVc1emNHOXpaU3dnYzJsdGNHeHBZMmxoYkZObGRDazdYRzRnSUhOcGJYQnNhV05wWVd4VFpYUWdQU0J0WVhSeWFYZ3VZV1JrS0Z4dUlDQWdJSE5wYlhCc2FXTnBZV3hUWlhRc1hHNGdJQ0FnYldGMGNtbDRMbk4xWW5SeVlXTjBLSFJ5WVc1emNHOXpaU3dnY0hKdlpFMWhkSEpwZUNsY2JpQWdLVHRjYmlBZ2NtVjBkWEp1SUcxaGRISnBlQzVsYkdsdGFXNWhkR1ZhWlhKdmN5aHphVzF3YkdsamFXRnNVMlYwS1R0Y2JuMWNibHh1THlvcVhHNGdLaUJIYVhabGJpQnBibVJwWTJWeklHRnVaQ0IzWldsbmFIUnpJR0Z1WkNCaGJpQnZjbWxuYVc1aGJDQmxiV0psWkdScGJtZHpYRzRnS2lCcGJtbDBhV0ZzYVhwbElIUm9aU0J3YjNOcGRHbHZibk1nYjJZZ2JtVjNJSEJ2YVc1MGN5QnlaV3hoZEdsMlpTQjBieUIwYUdWY2JpQXFJR2x1WkdsalpYTWdZVzVrSUhkbGFXZG9kSE1nS0c5bUlIUm9aV2x5SUc1bGFXZG9ZbTl5Y3lCcGJpQjBhR1VnYzI5MWNtTmxJR1JoZEdFcExseHVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYVc1cGRGUnlZVzV6Wm05eWJTaGNiaUFnYVc1a2FXTmxjem9nYm5WdFltVnlXMTFiWFN4Y2JpQWdkMlZwWjJoMGN6b2diblZ0WW1WeVcxMWJYU3hjYmlBZ1pXMWlaV1JrYVc1bk9pQldaV04wYjNKelhHNHBJSHRjYmlBZ1kyOXVjM1FnY21WemRXeDBJRDBnZFhScGJITmNiaUFnSUNBdWVtVnliM01vYVc1a2FXTmxjeTVzWlc1bmRHZ3BYRzRnSUNBZ0xtMWhjQ2dvWDNvcElEMCtJSFYwYVd4ekxucGxjbTl6S0dWdFltVmtaR2x1WjFzd1hTNXNaVzVuZEdncEtUdGNibHh1SUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHbHVaR2xqWlhNdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnTURzZ2FpQThJR2x1WkdsalpYTmJNRjB1YkdWdVozUm9PeUJxS3lzcElIdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHUWdQU0F3T3lCa0lEd2daVzFpWldSa2FXNW5XekJkTG14bGJtZDBhRHNnWkNzcktTQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElHRWdQU0JwYm1ScFkyVnpXMmxkVzJwZE8xeHVJQ0FnSUNBZ0lDQnlaWE4xYkhSYmFWMWJaRjBnS3owZ2QyVnBaMmgwYzF0cFhWdHFYU0FxSUdWdFltVmtaR2x1WjF0aFhWdGtYVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUgxY2JpQWdjbVYwZFhKdUlISmxjM1ZzZER0Y2JuMWNiaUpkZlE9PSIsIi8qKlxuICogQGxpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgMjAxOSBHb29nbGUgTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICovXG4vKipcbiAqIFRoaXMgaXMgYSBKYXZhU2NyaXB0IHJlaW1wbGVtZW50YXRpb24gb2YgVU1BUCAob3JpZ2luYWwgbGljZW5zZSBiZWxvdyksIGZyb21cbiAqIHRoZSBweXRob24gaW1wbGVtZW50YXRpb24gZm91bmQgYXQgaHR0cHM6Ly9naXRodWIuY29tL2xtY2lubmVzL3VtYXAuXG4gKlxuICogQGF1dGhvciBhbmR5Y29lbmVuQGdvb2dsZS5jb20gKEFuZHkgQ29lbmVuKVxuICovXG4vKipcbiAqIEBsaWNlbnNlXG4gKiBCU0QgMy1DbGF1c2UgTGljZW5zZVxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxNywgTGVsYW5kIE1jSW5uZXNcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0XG4gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1ldDpcbiAqXG4gKiAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSwgdGhpc1xuICogICBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci5cbiAqXG4gKiAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSxcbiAqICAgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvblxuICogICBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi5cbiAqXG4gKiAqIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIGNvcHlyaWdodCBob2xkZXIgbm9yIHRoZSBuYW1lcyBvZiBpdHNcbiAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb21cbiAqICAgdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi5cbiAqXG4gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTIFwiQVMgSVNcIlxuICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRVxuICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFXG4gKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUIEhPTERFUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFXG4gKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTFxuICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1JcbiAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSXG4gKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLFxuICogT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0VcbiAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuXG4gKi9cbmltcG9ydCAqIGFzIGhlYXAgZnJvbSAnLi9oZWFwJztcbmltcG9ydCAqIGFzIG1hdHJpeCBmcm9tICcuL21hdHJpeCc7XG5pbXBvcnQgKiBhcyB0cmVlIGZyb20gJy4vdHJlZSc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzJztcbi8qKlxuICogQ3JlYXRlIGEgdmVyc2lvbiBvZiBuZWFyZXN0IG5laWdoYm9yIGRlc2NlbnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYWtlTk5EZXNjZW50KGRpc3RhbmNlRm4sIHJhbmRvbSkge1xuICAgIHJldHVybiBmdW5jdGlvbiBuTkRlc2NlbnQoZGF0YSwgbGVhZkFycmF5LCBuTmVpZ2hib3JzLCBuSXRlcnMgPSAxMCwgbWF4Q2FuZGlkYXRlcyA9IDUwLCBkZWx0YSA9IDAuMDAxLCByaG8gPSAwLjUsIHJwVHJlZUluaXQgPSB0cnVlKSB7XG4gICAgICAgIGNvbnN0IG5WZXJ0aWNlcyA9IGRhdGEubGVuZ3RoO1xuICAgICAgICBjb25zdCBjdXJyZW50R3JhcGggPSBoZWFwLm1ha2VIZWFwKGRhdGEubGVuZ3RoLCBuTmVpZ2hib3JzKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRpY2VzID0gaGVhcC5yZWplY3Rpb25TYW1wbGUobk5laWdoYm9ycywgZGF0YS5sZW5ndGgsIHJhbmRvbSk7XG4gICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGluZGljZXMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBkID0gZGlzdGFuY2VGbihkYXRhW2ldLCBkYXRhW2luZGljZXNbal1dKTtcbiAgICAgICAgICAgICAgICBoZWFwLmhlYXBQdXNoKGN1cnJlbnRHcmFwaCwgaSwgZCwgaW5kaWNlc1tqXSwgMSk7XG4gICAgICAgICAgICAgICAgaGVhcC5oZWFwUHVzaChjdXJyZW50R3JhcGgsIGluZGljZXNbal0sIGQsIGksIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChycFRyZWVJbml0KSB7XG4gICAgICAgICAgICBmb3IgKGxldCBuID0gMDsgbiA8IGxlYWZBcnJheS5sZW5ndGg7IG4rKykge1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVhZkFycmF5W25dLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChsZWFmQXJyYXlbbl1baV0gPCAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IGxlYWZBcnJheVtuXS5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxlYWZBcnJheVtuXVtqXSA8IDApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkID0gZGlzdGFuY2VGbihkYXRhW2xlYWZBcnJheVtuXVtpXV0sIGRhdGFbbGVhZkFycmF5W25dW2pdXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFwLmhlYXBQdXNoKGN1cnJlbnRHcmFwaCwgbGVhZkFycmF5W25dW2ldLCBkLCBsZWFmQXJyYXlbbl1bal0sIDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVhcC5oZWFwUHVzaChjdXJyZW50R3JhcGgsIGxlYWZBcnJheVtuXVtqXSwgZCwgbGVhZkFycmF5W25dW2ldLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBuID0gMDsgbiA8IG5JdGVyczsgbisrKSB7XG4gICAgICAgICAgICBjb25zdCBjYW5kaWRhdGVOZWlnaGJvcnMgPSBoZWFwLmJ1aWxkQ2FuZGlkYXRlcyhjdXJyZW50R3JhcGgsIG5WZXJ0aWNlcywgbk5laWdoYm9ycywgbWF4Q2FuZGlkYXRlcywgcmFuZG9tKTtcbiAgICAgICAgICAgIGxldCBjID0gMDtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgblZlcnRpY2VzOyBpKyspIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IG1heENhbmRpZGF0ZXM7IGorKykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwID0gTWF0aC5mbG9vcihjYW5kaWRhdGVOZWlnaGJvcnNbMF1baV1bal0pO1xuICAgICAgICAgICAgICAgICAgICBpZiAocCA8IDAgfHwgdXRpbHMudGF1UmFuZChyYW5kb20pIDwgcmhvKVxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGsgPSAwOyBrIDwgbWF4Q2FuZGlkYXRlczsgaysrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBxID0gTWF0aC5mbG9vcihjYW5kaWRhdGVOZWlnaGJvcnNbMF1baV1ba10pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2ogPSBjYW5kaWRhdGVOZWlnaGJvcnNbMl1baV1bal07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjayA9IGNhbmRpZGF0ZU5laWdoYm9yc1syXVtpXVtrXTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChxIDwgMCB8fCAoIWNqICYmICFjaykpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkID0gZGlzdGFuY2VGbihkYXRhW3BdLCBkYXRhW3FdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGMgKz0gaGVhcC5oZWFwUHVzaChjdXJyZW50R3JhcGgsIHAsIGQsIHEsIDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYyArPSBoZWFwLmhlYXBQdXNoKGN1cnJlbnRHcmFwaCwgcSwgZCwgcCwgMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoYyA8PSBkZWx0YSAqIG5OZWlnaGJvcnMgKiBkYXRhLmxlbmd0aClcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzb3J0ZWQgPSBoZWFwLmRlaGVhcFNvcnQoY3VycmVudEdyYXBoKTtcbiAgICAgICAgcmV0dXJuIHNvcnRlZDtcbiAgICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VJbml0aWFsaXphdGlvbnMoZGlzdGFuY2VGbikge1xuICAgIGZ1bmN0aW9uIGluaXRGcm9tUmFuZG9tKG5OZWlnaGJvcnMsIGRhdGEsIHF1ZXJ5UG9pbnRzLCBfaGVhcCwgcmFuZG9tKSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcXVlcnlQb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGljZXMgPSB1dGlscy5yZWplY3Rpb25TYW1wbGUobk5laWdoYm9ycywgZGF0YS5sZW5ndGgsIHJhbmRvbSk7XG4gICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGluZGljZXMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoaW5kaWNlc1tqXSA8IDApXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGQgPSBkaXN0YW5jZUZuKGRhdGFbaW5kaWNlc1tqXV0sIHF1ZXJ5UG9pbnRzW2ldKTtcbiAgICAgICAgICAgICAgICBoZWFwLmhlYXBQdXNoKF9oZWFwLCBpLCBkLCBpbmRpY2VzW2pdLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmdW5jdGlvbiBpbml0RnJvbVRyZWUoX3RyZWUsIGRhdGEsIHF1ZXJ5UG9pbnRzLCBfaGVhcCwgcmFuZG9tKSB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcXVlcnlQb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGljZXMgPSB0cmVlLnNlYXJjaEZsYXRUcmVlKHF1ZXJ5UG9pbnRzW2ldLCBfdHJlZSwgcmFuZG9tKTtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgaW5kaWNlcy5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIGlmIChpbmRpY2VzW2pdIDwgMClcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIGNvbnN0IGQgPSBkaXN0YW5jZUZuKGRhdGFbaW5kaWNlc1tqXV0sIHF1ZXJ5UG9pbnRzW2ldKTtcbiAgICAgICAgICAgICAgICBoZWFwLmhlYXBQdXNoKF9oZWFwLCBpLCBkLCBpbmRpY2VzW2pdLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIHJldHVybiB7IGluaXRGcm9tUmFuZG9tLCBpbml0RnJvbVRyZWUgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBtYWtlSW5pdGlhbGl6ZWROTlNlYXJjaChkaXN0YW5jZUZuKSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uIG5uU2VhcmNoRm4oZGF0YSwgZ3JhcGgsIGluaXRpYWxpemF0aW9uLCBxdWVyeVBvaW50cykge1xuICAgICAgICBjb25zdCB7IGluZGljZXMsIGluZHB0ciB9ID0gbWF0cml4LmdldENTUihncmFwaCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcXVlcnlQb2ludHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHRyaWVkID0gbmV3IFNldChpbml0aWFsaXphdGlvblswXVtpXSk7XG4gICAgICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgICAgIC8vIEZpbmQgc21hbGxlc3QgZmxhZ2dlZCB2ZXJ0ZXhcbiAgICAgICAgICAgICAgICBjb25zdCB2ZXJ0ZXggPSBoZWFwLnNtYWxsZXN0RmxhZ2dlZChpbml0aWFsaXphdGlvbiwgaSk7XG4gICAgICAgICAgICAgICAgaWYgKHZlcnRleCA9PT0gLTEpXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNhbmRpZGF0ZXMgPSBpbmRpY2VzLnNsaWNlKGluZHB0clt2ZXJ0ZXhdLCBpbmRwdHJbdmVydGV4ICsgMV0pO1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgY2FuZGlkYXRlIG9mIGNhbmRpZGF0ZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNhbmRpZGF0ZSA9PT0gdmVydGV4IHx8XG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5kaWRhdGUgPT09IC0xIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmllZC5oYXMoY2FuZGlkYXRlKSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkID0gZGlzdGFuY2VGbihkYXRhW2NhbmRpZGF0ZV0sIHF1ZXJ5UG9pbnRzW2ldKTtcbiAgICAgICAgICAgICAgICAgICAgaGVhcC51bmNoZWNrZWRIZWFwUHVzaChpbml0aWFsaXphdGlvbiwgaSwgZCwgY2FuZGlkYXRlLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgdHJpZWQuYWRkKGNhbmRpZGF0ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpbml0aWFsaXphdGlvbjtcbiAgICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGluaXRpYWxpemVTZWFyY2goZm9yZXN0LCBkYXRhLCBxdWVyeVBvaW50cywgbk5laWdoYm9ycywgaW5pdEZyb21SYW5kb20sIGluaXRGcm9tVHJlZSwgcmFuZG9tKSB7XG4gICAgY29uc3QgcmVzdWx0cyA9IGhlYXAubWFrZUhlYXAocXVlcnlQb2ludHMubGVuZ3RoLCBuTmVpZ2hib3JzKTtcbiAgICBpbml0RnJvbVJhbmRvbShuTmVpZ2hib3JzLCBkYXRhLCBxdWVyeVBvaW50cywgcmVzdWx0cywgcmFuZG9tKTtcbiAgICBpZiAoZm9yZXN0KSB7XG4gICAgICAgIGZvciAoY29uc3QgdHJlZSBvZiBmb3Jlc3QpXG4gICAgICAgICAgICBpbml0RnJvbVRyZWUodHJlZSwgZGF0YSwgcXVlcnlQb2ludHMsIHJlc3VsdHMsIHJhbmRvbSk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHRzO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pYm01ZlpHVnpZMlZ1ZEM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJbTV1WDJSbGMyTmxiblF1ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdPenM3T3pzN096czdPenM3T3pzN08wZEJhVUpITzBGQlJVZzdPenM3TzBkQlMwYzdRVUZGU0RzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096dEhRU3RDUnp0QlFVVklMRTlCUVU4c1MwRkJTeXhKUVVGSkxFMUJRVTBzVVVGQlVTeERRVUZETzBGQlF5OUNMRTlCUVU4c1MwRkJTeXhOUVVGTkxFMUJRVTBzVlVGQlZTeERRVUZETzBGQlEyNURMRTlCUVU4c1MwRkJTeXhKUVVGSkxFMUJRVTBzVVVGQlVTeERRVUZETzBGQlF5OUNMRTlCUVU4c1MwRkJTeXhMUVVGTExFMUJRVTBzVTBGQlV5eERRVUZETzBGQlIycERPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdGQlFXRXNRMEZCUXl4VlFVRnpRaXhGUVVGRkxFMUJRV2RDTzBsQlEzQkZMRTlCUVU4c1UwRkJVeXhUUVVGVExFTkJRM1pDTEVsQlFWa3NSVUZEV2l4VFFVRnJRaXhGUVVOc1FpeFZRVUZyUWl4RlFVTnNRaXhOUVVGTkxFZEJRVWNzUlVGQlJTeEZRVU5ZTEdGQlFXRXNSMEZCUnl4RlFVRkZMRVZCUTJ4Q0xFdEJRVXNzUjBGQlJ5eExRVUZMTEVWQlEySXNSMEZCUnl4SFFVRkhMRWRCUVVjc1JVRkRWQ3hWUVVGVkxFZEJRVWNzU1VGQlNUdFJRVVZxUWl4TlFVRk5MRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETzFGQlF6bENMRTFCUVUwc1dVRkJXU3hIUVVGSExFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1JVRkJSU3hWUVVGVkxFTkJRVU1zUTBGQlF6dFJRVVUxUkN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU53UXl4TlFVRk5MRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU1zWlVGQlpTeERRVUZETEZWQlFWVXNSVUZCUlN4SlFVRkpMRU5CUVVNc1RVRkJUU3hGUVVGRkxFMUJRVTBzUTBGQlF5eERRVUZETzFsQlEzUkZMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzJkQ1FVTjJReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eFZRVUZWTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVVZvUkN4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExGbEJRVmtzUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkRha1FzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4WlFVRlpMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03WVVGRGJFUTdVMEZEUmp0UlFVTkVMRWxCUVVrc1ZVRkJWU3hGUVVGRk8xbEJRMlFzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGTkJRVk1zUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1owSkJRM3BETEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFRRVUZUTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzI5Q1FVTTFReXhKUVVGSkxGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRE8zZENRVU55UWl4TlFVRk5PMjlDUVVWU0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdDNRa0ZEYUVRc1NVRkJTU3hUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJRenMwUWtGRGNrSXNUVUZCVFR0M1FrRkZVaXhOUVVGTkxFTkJRVU1zUjBGQlJ5eFZRVUZWTEVOQlFVTXNTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8zZENRVU51UlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExGbEJRVmtzUlVGQlJTeFRRVUZUTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEZOQlFWTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0M1FrRkRjRVVzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4WlFVRlpMRVZCUVVVc1UwRkJVeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03Y1VKQlEzSkZPMmxDUVVOR08yRkJRMFk3VTBGRFJqdFJRVVZFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1dVRkRMMElzVFVGQlRTeHJRa0ZCYTBJc1IwRkJSeXhKUVVGSkxFTkJRVU1zWlVGQlpTeERRVU0zUXl4WlFVRlpMRVZCUTFvc1UwRkJVeXhGUVVOVUxGVkJRVlVzUlVGRFZpeGhRVUZoTEVWQlEySXNUVUZCVFN4RFFVTlFMRU5CUVVNN1dVRkZSaXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZEVml4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NVMEZCVXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yZENRVU5zUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NZVUZCWVN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yOUNRVU4wUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEd0Q1FVRnJRaXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03YjBKQlEyeEVMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zU1VGQlNTeExRVUZMTEVOQlFVTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFZEJRVWM3ZDBKQlEzUkRMRk5CUVZNN2IwSkJSVmdzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExHRkJRV0VzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0M1FrRkRkRU1zVFVGQlRTeERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhyUWtGQmEwSXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPM2RDUVVOc1JDeE5RVUZOTEVWQlFVVXNSMEZCUnl4clFrRkJhMElzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dDNRa0ZEZGtNc1RVRkJUU3hGUVVGRkxFZEJRVWNzYTBKQlFXdENMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN2QwSkJRM1pETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUlVGQlJTeEpRVUZKTEVOQlFVTXNSVUZCUlN4RFFVRkRPelJDUVVOMlFpeFRRVUZUTzNkQ1FVZFlMRTFCUVUwc1EwRkJReXhIUVVGSExGVkJRVlVzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdkMEpCUTNaRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRmxCUVZrc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenQzUWtGRE4wTXNRMEZCUXl4SlFVRkpMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zV1VGQldTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzNGQ1FVTTVRenRwUWtGRFJqdGhRVU5HTzFsQlEwUXNTVUZCU1N4RFFVRkRMRWxCUVVrc1MwRkJTeXhIUVVGSExGVkJRVlVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFR0blFrRkRka01zVFVGQlRUdFRRVU5VTzFGQlEwUXNUVUZCVFN4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXp0UlFVTTNReXhQUVVGUExFMUJRVTBzUTBGQlF6dEpRVU5vUWl4RFFVRkRMRU5CUVVNN1FVRkRTaXhEUVVGRE8wRkJhMEpFTEUxQlFVMHNWVUZCVlN4dFFrRkJiVUlzUTBGQlF5eFZRVUZ6UWp0SlFVTjRSQ3hUUVVGVExHTkJRV01zUTBGRGNrSXNWVUZCYTBJc1JVRkRiRUlzU1VGQldTeEZRVU5hTEZkQlFXMUNMRVZCUTI1Q0xFdEJRV2RDTEVWQlEyaENMRTFCUVdkQ08xRkJSV2hDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFhRVUZYTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRek5ETEUxQlFVMHNUMEZCVHl4SFFVRkhMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU1zVlVGQlZTeEZRVUZGTEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03V1VGRGRrVXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEU5QlFVOHNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3WjBKQlEzWkRMRWxCUVVrc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTTdiMEpCUTJoQ0xGTkJRVk03WjBKQlJWZ3NUVUZCVFN4RFFVRkRMRWRCUVVjc1ZVRkJWU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hYUVVGWExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkRka1FzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03WVVGRE0wTTdVMEZEUmp0SlFVTklMRU5CUVVNN1NVRkZSQ3hUUVVGVExGbEJRVmtzUTBGRGJrSXNTMEZCYjBJc1JVRkRjRUlzU1VGQldTeEZRVU5hTEZkQlFXMUNMRVZCUTI1Q0xFdEJRV2RDTEVWQlEyaENMRTFCUVdkQ08xRkJSV2hDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFhRVUZYTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRek5ETEUxQlFVMHNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJReXhqUVVGakxFTkJRVU1zVjBGQlZ5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRXRCUVVzc1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF6dFpRVVZ1UlN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUMEZCVHl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdG5Ra0ZEZGtNc1NVRkJTU3hQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXp0dlFrRkRhRUlzVDBGQlR6dG5Ra0ZGVkN4TlFVRk5MRU5CUVVNc1IwRkJSeXhWUVVGVkxFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxGZEJRVmNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVOMlJDeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dGhRVU16UXp0VFFVTkdPMUZCUTBRc1QwRkJUenRKUVVOVUxFTkJRVU03U1VGRlJDeFBRVUZQTEVWQlFVTXNZMEZCWXl4RlFVRkZMRmxCUVZrc1JVRkJReXhEUVVGRE8wRkJRM2hETEVOQlFVTTdRVUZUUkN4TlFVRk5MRlZCUVZVc2RVSkJRWFZDTEVOQlFVTXNWVUZCYzBJN1NVRkROVVFzVDBGQlR5eFRRVUZUTEZWQlFWVXNRMEZEZUVJc1NVRkJXU3hGUVVOYUxFdEJRVEJDTEVWQlF6RkNMR05CUVhsQ0xFVkJRM3BDTEZkQlFXMUNPMUZCUlc1Q0xFMUJRVTBzUlVGQlF5eFBRVUZQTEVWQlFVVXNUVUZCVFN4RlFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVVXZReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1YwRkJWeXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTXpReXhOUVVGTkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTTFReXhQUVVGUExFbEJRVWtzUlVGQlJUdG5Ra0ZEV0N3clFrRkJLMEk3WjBKQlF5OUNMRTFCUVUwc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eGxRVUZsTEVOQlFVTXNZMEZCWXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVVYyUkN4SlFVRkpMRTFCUVUwc1MwRkJTeXhEUVVGRExFTkJRVU03YjBKQlEyWXNUVUZCVFR0blFrRkZVaXhOUVVGTkxGVkJRVlVzUjBGQlJ5eFBRVUZQTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhOUVVGTkxFTkJRVU1zUlVGQlJTeE5RVUZOTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlEzSkZMRXRCUVVzc1RVRkJUU3hUUVVGVExFbEJRVWtzVlVGQlZTeEZRVUZGTzI5Q1FVTnNReXhKUVVORkxGTkJRVk1zUzBGQlN5eE5RVUZOTzNkQ1FVTndRaXhUUVVGVExFdEJRVXNzUTBGQlF5eERRVUZETzNkQ1FVTm9RaXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEZOQlFWTXNRMEZCUXp0M1FrRkZjRUlzVTBGQlV6dHZRa0ZGV0N4TlFVRk5MRU5CUVVNc1IwRkJSeXhWUVVGVkxFTkJRVU1zU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4RlFVRkZMRmRCUVZjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzI5Q1FVTjBSQ3hKUVVGSkxFTkJRVU1zYVVKQlFXbENMRU5CUVVNc1kwRkJZeXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNVMEZCVXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8yOUNRVU16UkN4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzJsQ1FVTjBRanRoUVVOR08xTkJRMFk3VVVGRFJDeFBRVUZQTEdOQlFXTXNRMEZCUXp0SlFVTjRRaXhEUVVGRExFTkJRVU03UVVGRFNpeERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRlZMR2RDUVVGblFpeERRVU01UWl4TlFVRjFRaXhGUVVOMlFpeEpRVUZaTEVWQlExb3NWMEZCYlVJc1JVRkRia0lzVlVGQmEwSXNSVUZEYkVJc1kwRkJaME1zUlVGRGFFTXNXVUZCTkVJc1JVRkROVUlzVFVGQlowSTdTVUZGYUVJc1RVRkJUU3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4WFFVRlhMRU5CUVVNc1RVRkJUU3hGUVVGRkxGVkJRVlVzUTBGQlF5eERRVUZETzBsQlF6bEVMR05CUVdNc1EwRkJReXhWUVVGVkxFVkJRVVVzU1VGQlNTeEZRVUZGTEZkQlFWY3NSVUZCUlN4UFFVRlBMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGREwwUXNTVUZCU1N4TlFVRk5MRVZCUVVVN1VVRkRWaXhMUVVGTExFMUJRVTBzU1VGQlNTeEpRVUZKTEUxQlFVMDdXVUZEZGtJc1dVRkJXU3hEUVVGRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVXNWMEZCVnl4RlFVRkZMRTlCUVU4c1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF6dExRVU14UkR0SlFVTkVMRTlCUVU4c1QwRkJUeXhEUVVGRE8wRkJRMnBDTEVOQlFVTWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUl2S2lwY2JpQXFJRUJzYVdObGJuTmxYRzRnS2x4dUlDb2dRMjl3ZVhKcFoyaDBJREl3TVRrZ1IyOXZaMnhsSUV4TVF5NGdRV3hzSUZKcFoyaDBjeUJTWlhObGNuWmxaQzVjYmlBcVhHNGdLaUJNYVdObGJuTmxaQ0IxYm1SbGNpQjBhR1VnUVhCaFkyaGxJRXhwWTJWdWMyVXNJRlpsY25OcGIyNGdNaTR3SUNoMGFHVWdYQ0pNYVdObGJuTmxYQ0lwTzF4dUlDb2dlVzkxSUcxaGVTQnViM1FnZFhObElIUm9hWE1nWm1sc1pTQmxlR05sY0hRZ2FXNGdZMjl0Y0d4cFlXNWpaU0IzYVhSb0lIUm9aU0JNYVdObGJuTmxMbHh1SUNvZ1dXOTFJRzFoZVNCdlluUmhhVzRnWVNCamIzQjVJRzltSUhSb1pTQk1hV05sYm5ObElHRjBYRzRnS2x4dUlDb2dJQ0FnSUdoMGRIQTZMeTkzZDNjdVlYQmhZMmhsTG05eVp5OXNhV05sYm5ObGN5OU1TVU5GVGxORkxUSXVNRnh1SUNwY2JpQXFJRlZ1YkdWemN5QnlaWEYxYVhKbFpDQmllU0JoY0hCc2FXTmhZbXhsSUd4aGR5QnZjaUJoWjNKbFpXUWdkRzhnYVc0Z2QzSnBkR2x1Wnl3Z2MyOW1kSGRoY21WY2JpQXFJR1JwYzNSeWFXSjFkR1ZrSUhWdVpHVnlJSFJvWlNCTWFXTmxibk5sSUdseklHUnBjM1J5YVdKMWRHVmtJRzl1SUdGdUlGd2lRVk1nU1ZOY0lpQkNRVk5KVXl4Y2JpQXFJRmRKVkVoUFZWUWdWMEZTVWtGT1ZFbEZVeUJQVWlCRFQwNUVTVlJKVDA1VElFOUdJRUZPV1NCTFNVNUVMQ0JsYVhSb1pYSWdaWGh3Y21WemN5QnZjaUJwYlhCc2FXVmtMbHh1SUNvZ1UyVmxJSFJvWlNCTWFXTmxibk5sSUdadmNpQjBhR1VnYzNCbFkybG1hV01nYkdGdVozVmhaMlVnWjI5MlpYSnVhVzVuSUhCbGNtMXBjM05wYjI1eklHRnVaRnh1SUNvZ2JHbHRhWFJoZEdsdmJuTWdkVzVrWlhJZ2RHaGxJRXhwWTJWdWMyVXVYRzRnS2lBOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDFjYmlBcUwxeHVYRzR2S2lwY2JpQXFJRlJvYVhNZ2FYTWdZU0JLWVhaaFUyTnlhWEIwSUhKbGFXMXdiR1Z0Wlc1MFlYUnBiMjRnYjJZZ1ZVMUJVQ0FvYjNKcFoybHVZV3dnYkdsalpXNXpaU0JpWld4dmR5a3NJR1p5YjIxY2JpQXFJSFJvWlNCd2VYUm9iMjRnYVcxd2JHVnRaVzUwWVhScGIyNGdabTkxYm1RZ1lYUWdhSFIwY0hNNkx5OW5hWFJvZFdJdVkyOXRMMnh0WTJsdWJtVnpMM1Z0WVhBdVhHNGdLbHh1SUNvZ1FHRjFkR2h2Y2lCaGJtUjVZMjlsYm1WdVFHZHZiMmRzWlM1amIyMGdLRUZ1WkhrZ1EyOWxibVZ1S1Z4dUlDb3ZYRzVjYmk4cUtseHVJQ29nUUd4cFkyVnVjMlZjYmlBcUlFSlRSQ0F6TFVOc1lYVnpaU0JNYVdObGJuTmxYRzRnS2x4dUlDb2dRMjl3ZVhKcFoyaDBJQ2hqS1NBeU1ERTNMQ0JNWld4aGJtUWdUV05KYm01bGMxeHVJQ29nUVd4c0lISnBaMmgwY3lCeVpYTmxjblpsWkM1Y2JpQXFYRzRnS2lCU1pXUnBjM1J5YVdKMWRHbHZiaUJoYm1RZ2RYTmxJR2x1SUhOdmRYSmpaU0JoYm1RZ1ltbHVZWEo1SUdadmNtMXpMQ0IzYVhSb0lHOXlJSGRwZEdodmRYUmNiaUFxSUcxdlpHbG1hV05oZEdsdmJpd2dZWEpsSUhCbGNtMXBkSFJsWkNCd2NtOTJhV1JsWkNCMGFHRjBJSFJvWlNCbWIyeHNiM2RwYm1jZ1kyOXVaR2wwYVc5dWN5QmhjbVVnYldWME9seHVJQ3BjYmlBcUlDb2dVbVZrYVhOMGNtbGlkWFJwYjI1eklHOW1JSE52ZFhKalpTQmpiMlJsSUcxMWMzUWdjbVYwWVdsdUlIUm9aU0JoWW05MlpTQmpiM0I1Y21sbmFIUWdibTkwYVdObExDQjBhR2x6WEc0Z0tpQWdJR3hwYzNRZ2IyWWdZMjl1WkdsMGFXOXVjeUJoYm1RZ2RHaGxJR1p2Ykd4dmQybHVaeUJrYVhOamJHRnBiV1Z5TGx4dUlDcGNiaUFxSUNvZ1VtVmthWE4wY21saWRYUnBiMjV6SUdsdUlHSnBibUZ5ZVNCbWIzSnRJRzExYzNRZ2NtVndjbTlrZFdObElIUm9aU0JoWW05MlpTQmpiM0I1Y21sbmFIUWdibTkwYVdObExGeHVJQ29nSUNCMGFHbHpJR3hwYzNRZ2IyWWdZMjl1WkdsMGFXOXVjeUJoYm1RZ2RHaGxJR1p2Ykd4dmQybHVaeUJrYVhOamJHRnBiV1Z5SUdsdUlIUm9aU0JrYjJOMWJXVnVkR0YwYVc5dVhHNGdLaUFnSUdGdVpDOXZjaUJ2ZEdobGNpQnRZWFJsY21saGJITWdjSEp2ZG1sa1pXUWdkMmwwYUNCMGFHVWdaR2x6ZEhKcFluVjBhVzl1TGx4dUlDcGNiaUFxSUNvZ1RtVnBkR2hsY2lCMGFHVWdibUZ0WlNCdlppQjBhR1VnWTI5d2VYSnBaMmgwSUdodmJHUmxjaUJ1YjNJZ2RHaGxJRzVoYldWeklHOW1JR2wwYzF4dUlDb2dJQ0JqYjI1MGNtbGlkWFJ2Y25NZ2JXRjVJR0psSUhWelpXUWdkRzhnWlc1a2IzSnpaU0J2Y2lCd2NtOXRiM1JsSUhCeWIyUjFZM1J6SUdSbGNtbDJaV1FnWm5KdmJWeHVJQ29nSUNCMGFHbHpJSE52Wm5SM1lYSmxJSGRwZEdodmRYUWdjM0JsWTJsbWFXTWdjSEpwYjNJZ2QzSnBkSFJsYmlCd1pYSnRhWE56YVc5dUxseHVJQ3BjYmlBcUlGUklTVk1nVTA5R1ZGZEJVa1VnU1ZNZ1VGSlBWa2xFUlVRZ1Fsa2dWRWhGSUVOUFVGbFNTVWRJVkNCSVQweEVSVkpUSUVGT1JDQkRUMDVVVWtsQ1ZWUlBVbE1nWENKQlV5QkpVMXdpWEc0Z0tpQkJUa1FnUVU1WklFVllVRkpGVTFNZ1QxSWdTVTFRVEVsRlJDQlhRVkpTUVU1VVNVVlRMQ0JKVGtOTVZVUkpUa2NzSUVKVlZDQk9UMVFnVEVsTlNWUkZSQ0JVVHl3Z1ZFaEZYRzRnS2lCSlRWQk1TVVZFSUZkQlVsSkJUbFJKUlZNZ1QwWWdUVVZTUTBoQlRsUkJRa2xNU1ZSWklFRk9SQ0JHU1ZST1JWTlRJRVpQVWlCQklGQkJVbFJKUTFWTVFWSWdVRlZTVUU5VFJTQkJVa1ZjYmlBcUlFUkpVME5NUVVsTlJVUXVJRWxPSUU1UElFVldSVTVVSUZOSVFVeE1JRlJJUlNCRFQxQlpVa2xIU0ZRZ1NFOU1SRVZTSUU5U0lFTlBUbFJTU1VKVlZFOVNVeUJDUlNCTVNVRkNURVZjYmlBcUlFWlBVaUJCVGxrZ1JFbFNSVU5VTENCSlRrUkpVa1ZEVkN3Z1NVNURTVVJGVGxSQlRDd2dVMUJGUTBsQlRDd2dSVmhGVFZCTVFWSlpMQ0JQVWlCRFQwNVRSVkZWUlU1VVNVRk1YRzRnS2lCRVFVMUJSMFZUSUNoSlRrTk1WVVJKVGtjc0lFSlZWQ0JPVDFRZ1RFbE5TVlJGUkNCVVR5d2dVRkpQUTFWU1JVMUZUbFFnVDBZZ1UxVkNVMVJKVkZWVVJTQkhUMDlFVXlCUFVseHVJQ29nVTBWU1ZrbERSVk03SUV4UFUxTWdUMFlnVlZORkxDQkVRVlJCTENCUFVpQlFVazlHU1ZSVE95QlBVaUJDVlZOSlRrVlRVeUJKVGxSRlVsSlZVRlJKVDA0cElFaFBWMFZXUlZKY2JpQXFJRU5CVlZORlJDQkJUa1FnVDA0Z1FVNVpJRlJJUlU5U1dTQlBSaUJNU1VGQ1NVeEpWRmtzSUZkSVJWUklSVklnU1U0Z1EwOU9WRkpCUTFRc0lGTlVVa2xEVkNCTVNVRkNTVXhKVkZrc1hHNGdLaUJQVWlCVVQxSlVJQ2hKVGtOTVZVUkpUa2NnVGtWSFRFbEhSVTVEUlNCUFVpQlBWRWhGVWxkSlUwVXBJRUZTU1ZOSlRrY2dTVTRnUVU1WklGZEJXU0JQVlZRZ1QwWWdWRWhGSUZWVFJWeHVJQ29nVDBZZ1ZFaEpVeUJUVDBaVVYwRlNSU3dnUlZaRlRpQkpSaUJCUkZaSlUwVkVJRTlHSUZSSVJTQlFUMU5UU1VKSlRFbFVXU0JQUmlCVFZVTklJRVJCVFVGSFJTNWNiaUFxTDF4dVhHNXBiWEJ2Y25RZ0tpQmhjeUJvWldGd0lHWnliMjBnSnk0dmFHVmhjQ2M3WEc1cGJYQnZjblFnS2lCaGN5QnRZWFJ5YVhnZ1puSnZiU0FuTGk5dFlYUnlhWGduTzF4dWFXMXdiM0owSUNvZ1lYTWdkSEpsWlNCbWNtOXRJQ2N1TDNSeVpXVW5PMXh1YVcxd2IzSjBJQ29nWVhNZ2RYUnBiSE1nWm5KdmJTQW5MaTkxZEdsc2N5YzdYRzVwYlhCdmNuUWdlMUpoYm1SdmJVWnVMQ0JXWldOMGIzSnpMQ0JFYVhOMFlXNWpaVVp1TENCV1pXTjBiM0o5SUdaeWIyMGdKeTR2ZFcxaGNDYzdYRzVjYmk4cUtseHVJQ29nUTNKbFlYUmxJR0VnZG1WeWMybHZiaUJ2WmlCdVpXRnlaWE4wSUc1bGFXZG9ZbTl5SUdSbGMyTmxiblF1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnRZV3RsVGs1RVpYTmpaVzUwS0dScGMzUmhibU5sUm00NklFUnBjM1JoYm1ObFJtNHNJSEpoYm1SdmJUb2dVbUZ1Wkc5dFJtNHBJSHRjYmlBZ2NtVjBkWEp1SUdaMWJtTjBhVzl1SUc1T1JHVnpZMlZ1ZENoY2JpQWdJQ0JrWVhSaE9pQldaV04wYjNJc1hHNGdJQ0FnYkdWaFprRnljbUY1T2lCV1pXTjBiM0p6TEZ4dUlDQWdJRzVPWldsbmFHSnZjbk02SUc1MWJXSmxjaXhjYmlBZ0lDQnVTWFJsY25NZ1BTQXhNQ3hjYmlBZ0lDQnRZWGhEWVc1a2FXUmhkR1Z6SUQwZ05UQXNYRzRnSUNBZ1pHVnNkR0VnUFNBd0xqQXdNU3hjYmlBZ0lDQnlhRzhnUFNBd0xqVXNYRzRnSUNBZ2NuQlVjbVZsU1c1cGRDQTlJSFJ5ZFdWY2JpQWdLU0I3WEc0Z0lDQWdZMjl1YzNRZ2JsWmxjblJwWTJWeklEMGdaR0YwWVM1c1pXNW5kR2c3WEc0Z0lDQWdZMjl1YzNRZ1kzVnljbVZ1ZEVkeVlYQm9JRDBnYUdWaGNDNXRZV3RsU0dWaGNDaGtZWFJoTG14bGJtZDBhQ3dnYms1bGFXZG9ZbTl5Y3lrN1hHNWNiaUFnSUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHUmhkR0V1YkdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNBZ0lHTnZibk4wSUdsdVpHbGpaWE1nUFNCb1pXRndMbkpsYW1WamRHbHZibE5oYlhCc1pTaHVUbVZwWjJoaWIzSnpMQ0JrWVhSaExteGxibWQwYUN3Z2NtRnVaRzl0S1R0Y2JpQWdJQ0FnSUdadmNpQW9iR1YwSUdvZ1BTQXdPeUJxSUR3Z2FXNWthV05sY3k1c1pXNW5kR2c3SUdvckt5a2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQmtJRDBnWkdsemRHRnVZMlZHYmloa1lYUmhXMmxkTENCa1lYUmhXMmx1WkdsalpYTmJhbDFkS1R0Y2JseHVJQ0FnSUNBZ0lDQm9aV0Z3TG1obFlYQlFkWE5vS0dOMWNuSmxiblJIY21Gd2FDd2dhU3dnWkN3Z2FXNWthV05sYzF0cVhTd2dNU2s3WEc0Z0lDQWdJQ0FnSUdobFlYQXVhR1ZoY0ZCMWMyZ29ZM1Z5Y21WdWRFZHlZWEJvTENCcGJtUnBZMlZ6VzJwZExDQmtMQ0JwTENBeEtUdGNiaUFnSUNBZ0lIMWNiaUFnSUNCOVhHNGdJQ0FnYVdZZ0tISndWSEpsWlVsdWFYUXBJSHRjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJRzRnUFNBd095QnVJRHdnYkdWaFprRnljbUY1TG14bGJtZDBhRHNnYmlzcktTQjdYRzRnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnYkdWaFprRnljbUY1VzI1ZExteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2FXWWdLR3hsWVdaQmNuSmhlVnR1WFZ0cFhTQThJREFwWEc0Z0lDQWdJQ0FnSUNBZ0lDQmljbVZoYXp0Y2JseHVJQ0FnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR29nUFNCcElDc2dNVHNnYWlBOElHeGxZV1pCY25KaGVWdHVYUzVzWlc1bmRHZzdJR29yS3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHeGxZV1pCY25KaGVWdHVYVnRxWFNBOElEQXBYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHSnlaV0ZyTzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQmtJRDBnWkdsemRHRnVZMlZHYmloa1lYUmhXMnhsWVdaQmNuSmhlVnR1WFZ0cFhWMHNJR1JoZEdGYmJHVmhaa0Z5Y21GNVcyNWRXMnBkWFNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JvWldGd0xtaGxZWEJRZFhOb0tHTjFjbkpsYm5SSGNtRndhQ3dnYkdWaFprRnljbUY1VzI1ZFcybGRMQ0JrTENCc1pXRm1RWEp5WVhsYmJsMWJhbDBzSURFcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnYUdWaGNDNW9aV0Z3VUhWemFDaGpkWEp5Wlc1MFIzSmhjR2dzSUd4bFlXWkJjbkpoZVZ0dVhWdHFYU3dnWkN3Z2JHVmhaa0Z5Y21GNVcyNWRXMmxkTENBeEtUdGNiaUFnSUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc1Y2JpQWdJQ0JtYjNJZ0tHeGxkQ0J1SUQwZ01Ec2diaUE4SUc1SmRHVnljenNnYmlzcktTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCallXNWthV1JoZEdWT1pXbG5hR0p2Y25NZ1BTQm9aV0Z3TG1KMWFXeGtRMkZ1Wkdsa1lYUmxjeWhjYmlBZ0lDQWdJQ0FnWTNWeWNtVnVkRWR5WVhCb0xGeHVJQ0FnSUNBZ0lDQnVWbVZ5ZEdsalpYTXNYRzRnSUNBZ0lDQWdJRzVPWldsbmFHSnZjbk1zWEc0Z0lDQWdJQ0FnSUcxaGVFTmhibVJwWkdGMFpYTXNYRzRnSUNBZ0lDQWdJSEpoYm1SdmJWeHVJQ0FnSUNBZ0tUdGNibHh1SUNBZ0lDQWdiR1YwSUdNZ1BTQXdPMXh1SUNBZ0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0J1Vm1WeWRHbGpaWE03SUdrckt5a2dlMXh1SUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0JxSUQwZ01Ec2dhaUE4SUcxaGVFTmhibVJwWkdGMFpYTTdJR29yS3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElIQWdQU0JOWVhSb0xtWnNiMjl5S0dOaGJtUnBaR0YwWlU1bGFXZG9ZbTl5YzFzd1hWdHBYVnRxWFNrN1hHNGdJQ0FnSUNBZ0lDQWdhV1lnS0hBZ1BDQXdJSHg4SUhWMGFXeHpMblJoZFZKaGJtUW9jbUZ1Wkc5dEtTQThJSEpvYnlsY2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5ScGJuVmxPMXh1WEc0Z0lDQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2F5QTlJREE3SUdzZ1BDQnRZWGhEWVc1a2FXUmhkR1Z6T3lCckt5c3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUhFZ1BTQk5ZWFJvTG1ac2IyOXlLR05oYm1ScFpHRjBaVTVsYVdkb1ltOXljMXN3WFZ0cFhWdHJYU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCamFpQTlJR05oYm1ScFpHRjBaVTVsYVdkb1ltOXljMXN5WFZ0cFhWdHFYVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUdOcklEMGdZMkZ1Wkdsa1lYUmxUbVZwWjJoaWIzSnpXekpkVzJsZFcydGRPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLSEVnUENBd0lIeDhJQ2doWTJvZ0ppWWdJV05yS1NsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWRHbHVkV1U3WEc1Y2JseHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdaQ0E5SUdScGMzUmhibU5sUm00b1pHRjBZVnR3WFN3Z1pHRjBZVnR4WFNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqSUNzOUlHaGxZWEF1YUdWaGNGQjFjMmdvWTNWeWNtVnVkRWR5WVhCb0xDQndMQ0JrTENCeExDQXhLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTWdLejBnYUdWaGNDNW9aV0Z3VUhWemFDaGpkWEp5Wlc1MFIzSmhjR2dzSUhFc0lHUXNJSEFzSURFcE8xeHVJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlZ4dUlDQWdJQ0FnYVdZZ0tHTWdQRDBnWkdWc2RHRWdLaUJ1VG1WcFoyaGliM0p6SUNvZ1pHRjBZUzVzWlc1bmRHZ3BYRzRnSUNBZ0lDQWdJR0p5WldGck8xeHVJQ0FnSUgxY2JpQWdJQ0JqYjI1emRDQnpiM0owWldRZ1BTQm9aV0Z3TG1SbGFHVmhjRk52Y25Rb1kzVnljbVZ1ZEVkeVlYQm9LVHRjYmlBZ0lDQnlaWFIxY200Z2MyOXlkR1ZrTzF4dUlDQjlPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ2RIbHdaU0JKYm1sMFJuSnZiVkpoYm1SdmJVWnVJRDBnS0Z4dUlDQnVUbVZwWjJoaWIzSnpPaUJ1ZFcxaVpYSXNYRzRnSUdSaGRHRTZJRlpsWTNSdmNpeGNiaUFnY1hWbGNubFFiMmx1ZEhNNklGWmxZM1J2Y2l4Y2JpQWdYMmhsWVhBNklHaGxZWEF1U0dWaGNDeGNiaUFnY21GdVpHOXRPaUJTWVc1a2IyMUdibHh1S1NBOVBpQjJiMmxrTzF4dVhHNWxlSEJ2Y25RZ2RIbHdaU0JKYm1sMFJuSnZiVlJ5WldWR2JpQTlJQ2hjYmlBZ1gzUnlaV1U2SUhSeVpXVXVSbXhoZEZSeVpXVXNYRzRnSUdSaGRHRTZJRlpsWTNSdmNpeGNiaUFnY1hWbGNubFFiMmx1ZEhNNklGWmxZM1J2Y2l4Y2JpQWdYMmhsWVhBNklHaGxZWEF1U0dWaGNDeGNiaUFnY21GdVpHOXRPaUJTWVc1a2IyMUdibHh1S1NBOVBpQjJiMmxrTzF4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2JXRnJaVWx1YVhScFlXeHBlbUYwYVc5dWN5aGthWE4wWVc1alpVWnVPaUJFYVhOMFlXNWpaVVp1S1NCN1hHNGdJR1oxYm1OMGFXOXVJR2x1YVhSR2NtOXRVbUZ1Wkc5dEtGeHVJQ0FnSUc1T1pXbG5hR0p2Y25NNklHNTFiV0psY2l4Y2JpQWdJQ0JrWVhSaE9pQldaV04wYjNJc1hHNGdJQ0FnY1hWbGNubFFiMmx1ZEhNNklGWmxZM1J2Y2l4Y2JpQWdJQ0JmYUdWaGNEb2dhR1ZoY0M1SVpXRndMRnh1SUNBZ0lISmhibVJ2YlRvZ1VtRnVaRzl0Um01Y2JpQWdLU0I3WEc0Z0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0J4ZFdWeWVWQnZhVzUwY3k1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ2FXNWthV05sY3lBOUlIVjBhV3h6TG5KbGFtVmpkR2x2YmxOaGJYQnNaU2h1VG1WcFoyaGliM0p6TENCa1lYUmhMbXhsYm1kMGFDd2djbUZ1Wkc5dEtUdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHb2dQU0F3T3lCcUlEd2dhVzVrYVdObGN5NXNaVzVuZEdnN0lHb3JLeWtnZTF4dUlDQWdJQ0FnSUNCcFppQW9hVzVrYVdObGMxdHFYU0E4SURBcFhHNGdJQ0FnSUNBZ0lDQWdZMjl1ZEdsdWRXVTdYRzVjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdaQ0E5SUdScGMzUmhibU5sUm00b1pHRjBZVnRwYm1ScFkyVnpXMnBkWFN3Z2NYVmxjbmxRYjJsdWRITmJhVjBwTzF4dUlDQWdJQ0FnSUNCb1pXRndMbWhsWVhCUWRYTm9LRjlvWldGd0xDQnBMQ0JrTENCcGJtUnBZMlZ6VzJwZExDQXhLVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUgxY2JseHVJQ0JtZFc1amRHbHZiaUJwYm1sMFJuSnZiVlJ5WldVb1hHNGdJQ0FnWDNSeVpXVTZJSFJ5WldVdVJteGhkRlJ5WldVc1hHNGdJQ0FnWkdGMFlUb2dWbVZqZEc5eUxGeHVJQ0FnSUhGMVpYSjVVRzlwYm5Sek9pQldaV04wYjNJc1hHNGdJQ0FnWDJobFlYQTZJR2hsWVhBdVNHVmhjQ3hjYmlBZ0lDQnlZVzVrYjIwNklGSmhibVJ2YlVadVhHNGdJQ2tnZTF4dUlDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnY1hWbGNubFFiMmx1ZEhNdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQWdJR052Ym5OMElHbHVaR2xqWlhNZ1BTQjBjbVZsTG5ObFlYSmphRVpzWVhSVWNtVmxLSEYxWlhKNVVHOXBiblJ6VzJsZExDQmZkSEpsWlN3Z2NtRnVaRzl0S1R0Y2JseHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJREE3SUdvZ1BDQnBibVJwWTJWekxteGxibWQwYURzZ2Fpc3JLU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaHBibVJwWTJWelcycGRJRHdnTUNsY2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200N1hHNWNiaUFnSUNBZ0lDQWdZMjl1YzNRZ1pDQTlJR1JwYzNSaGJtTmxSbTRvWkdGMFlWdHBibVJwWTJWelcycGRYU3dnY1hWbGNubFFiMmx1ZEhOYmFWMHBPMXh1SUNBZ0lDQWdJQ0JvWldGd0xtaGxZWEJRZFhOb0tGOW9aV0Z3TENCcExDQmtMQ0JwYm1ScFkyVnpXMnBkTENBeEtUdGNiaUFnSUNBZ0lIMWNiaUFnSUNCOVhHNGdJQ0FnY21WMGRYSnVPMXh1SUNCOVhHNWNiaUFnY21WMGRYSnVJSHRwYm1sMFJuSnZiVkpoYm1SdmJTd2dhVzVwZEVaeWIyMVVjbVZsZlR0Y2JuMWNibHh1Wlhod2IzSjBJSFI1Y0dVZ1UyVmhjbU5vUm00Z1BTQW9YRzRnSUdSaGRHRTZJRlpsWTNSdmNpeGNiaUFnWjNKaGNHZzZJRzFoZEhKcGVDNVRjR0Z5YzJWTllYUnlhWGdzWEc0Z0lHbHVhWFJwWVd4cGVtRjBhVzl1T2lCb1pXRndMa2hsWVhBc1hHNGdJSEYxWlhKNVVHOXBiblJ6T2lCV1pXTjBiM0pjYmlrZ1BUNGdhR1ZoY0M1SVpXRndPMXh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYldGclpVbHVhWFJwWVd4cGVtVmtUazVUWldGeVkyZ29aR2x6ZEdGdVkyVkdiam9nUkdsemRHRnVZMlZHYmlrZ2UxeHVJQ0J5WlhSMWNtNGdablZ1WTNScGIyNGdibTVUWldGeVkyaEdiaWhjYmlBZ0lDQmtZWFJoT2lCV1pXTjBiM0lzWEc0Z0lDQWdaM0poY0dnNklHMWhkSEpwZUM1VGNHRnljMlZOWVhSeWFYZ3NYRzRnSUNBZ2FXNXBkR2xoYkdsNllYUnBiMjQ2SUdobFlYQXVTR1ZoY0N4Y2JpQWdJQ0J4ZFdWeWVWQnZhVzUwY3pvZ1ZtVmpkRzl5WEc0Z0lDa2dlMXh1SUNBZ0lHTnZibk4wSUh0cGJtUnBZMlZ6TENCcGJtUndkSEo5SUQwZ2JXRjBjbWw0TG1kbGRFTlRVaWhuY21Gd2FDazdYRzVjYmlBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSEYxWlhKNVVHOXBiblJ6TG14bGJtZDBhRHNnYVNzcktTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCMGNtbGxaQ0E5SUc1bGR5QlRaWFFvYVc1cGRHbGhiR2w2WVhScGIyNWJNRjFiYVYwcE8xeHVJQ0FnSUNBZ2QyaHBiR1VnS0hSeWRXVXBJSHRjYmlBZ0lDQWdJQ0FnTHk4Z1JtbHVaQ0J6YldGc2JHVnpkQ0JtYkdGbloyVmtJSFpsY25SbGVGeHVJQ0FnSUNBZ0lDQmpiMjV6ZENCMlpYSjBaWGdnUFNCb1pXRndMbk50WVd4c1pYTjBSbXhoWjJkbFpDaHBibWwwYVdGc2FYcGhkR2x2Yml3Z2FTazdYRzVjYmlBZ0lDQWdJQ0FnYVdZZ0tIWmxjblJsZUNBOVBUMGdMVEVwWEc0Z0lDQWdJQ0FnSUNBZ1luSmxZV3M3WEc1Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWTJGdVpHbGtZWFJsY3lBOUlHbHVaR2xqWlhNdWMyeHBZMlVvYVc1a2NIUnlXM1psY25SbGVGMHNJR2x1WkhCMGNsdDJaWEowWlhnZ0t5QXhYU2s3WEc0Z0lDQWdJQ0FnSUdadmNpQW9ZMjl1YzNRZ1kyRnVaR2xrWVhSbElHOW1JR05oYm1ScFpHRjBaWE1wSUh0Y2JpQWdJQ0FnSUNBZ0lDQnBaaUFvWEc0Z0lDQWdJQ0FnSUNBZ0lDQmpZVzVrYVdSaGRHVWdQVDA5SUhabGNuUmxlQ0I4ZkZ4dUlDQWdJQ0FnSUNBZ0lDQWdZMkZ1Wkdsa1lYUmxJRDA5UFNBdE1TQjhmRnh1SUNBZ0lDQWdJQ0FnSUNBZ2RISnBaV1F1YUdGektHTmhibVJwWkdGMFpTbGNiaUFnSUNBZ0lDQWdJQ0FwWEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjUwYVc1MVpUdGNibHh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR1FnUFNCa2FYTjBZVzVqWlVadUtHUmhkR0ZiWTJGdVpHbGtZWFJsWFN3Z2NYVmxjbmxRYjJsdWRITmJhVjBwTzF4dUlDQWdJQ0FnSUNBZ0lHaGxZWEF1ZFc1amFHVmphMlZrU0dWaGNGQjFjMmdvYVc1cGRHbGhiR2w2WVhScGIyNHNJR2tzSUdRc0lHTmhibVJwWkdGMFpTd2dNU2s3WEc0Z0lDQWdJQ0FnSUNBZ2RISnBaV1F1WVdSa0tHTmhibVJwWkdGMFpTazdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUNBZ2NtVjBkWEp1SUdsdWFYUnBZV3hwZW1GMGFXOXVPMXh1SUNCOU8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnYVc1cGRHbGhiR2w2WlZObFlYSmphQ2hjYmlBZ1ptOXlaWE4wT2lCMGNtVmxMa1pzWVhSVWNtVmxXMTBzWEc0Z0lHUmhkR0U2SUZabFkzUnZjaXhjYmlBZ2NYVmxjbmxRYjJsdWRITTZJRlpsWTNSdmNpeGNiaUFnYms1bGFXZG9ZbTl5Y3pvZ2JuVnRZbVZ5TEZ4dUlDQnBibWwwUm5KdmJWSmhibVJ2YlRvZ1NXNXBkRVp5YjIxU1lXNWtiMjFHYml4Y2JpQWdhVzVwZEVaeWIyMVVjbVZsT2lCSmJtbDBSbkp2YlZSeVpXVkdiaXhjYmlBZ2NtRnVaRzl0T2lCU1lXNWtiMjFHYmx4dUtTQjdYRzRnSUdOdmJuTjBJSEpsYzNWc2RITWdQU0JvWldGd0xtMWhhMlZJWldGd0tIRjFaWEo1VUc5cGJuUnpMbXhsYm1kMGFDd2diazVsYVdkb1ltOXljeWs3WEc0Z0lHbHVhWFJHY205dFVtRnVaRzl0S0c1T1pXbG5hR0p2Y25Nc0lHUmhkR0VzSUhGMVpYSjVVRzlwYm5SekxDQnlaWE4xYkhSekxDQnlZVzVrYjIwcE8xeHVJQ0JwWmlBb1ptOXlaWE4wS1NCN1hHNGdJQ0FnWm05eUlDaGpiMjV6ZENCMGNtVmxJRzltSUdadmNtVnpkQ2xjYmlBZ0lDQWdJR2x1YVhSR2NtOXRWSEpsWlNoMGNtVmxMQ0JrWVhSaExDQnhkV1Z5ZVZCdmFXNTBjeXdnY21WemRXeDBjeXdnY21GdVpHOXRLVHRjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdjbVZ6ZFd4MGN6dGNibjFjYmlKZGZRPT0iLCJpbXBvcnQgaXNBcnJheSBmcm9tICdpcy1hbnktYXJyYXknO1xuXG5pbXBvcnQgZXJyb3JDYWxjdWxhdGlvbiBmcm9tICcuL2Vycm9yQ2FsY3VsYXRpb24nO1xuaW1wb3J0IHN0ZXAgZnJvbSAnLi9zdGVwJztcblxuLyoqXG4gKiBDdXJ2ZSBmaXR0aW5nIGFsZ29yaXRobVxuICogQHBhcmFtIHt7eDpBcnJheTxudW1iZXI+LCB5OkFycmF5PG51bWJlcj59fSBkYXRhIC0gQXJyYXkgb2YgcG9pbnRzIHRvIGZpdCBpbiB0aGUgZm9ybWF0IFt4MSwgeDIsIC4uLiBdLCBbeTEsIHkyLCAuLi4gXVxuICogQHBhcmFtIHtmdW5jdGlvbn0gcGFyYW1ldGVyaXplZEZ1bmN0aW9uIC0gVGhlIHBhcmFtZXRlcnMgYW5kIHJldHVybnMgYSBmdW5jdGlvbiB3aXRoIHRoZSBpbmRlcGVuZGVudCB2YXJpYWJsZSBhcyBhIHBhcmFtZXRlclxuICogQHBhcmFtIHtvYmplY3R9IFtvcHRpb25zXSAtIE9wdGlvbnMgb2JqZWN0XG4gKiBAcGFyYW0ge251bWJlcn0gW29wdGlvbnMuZGFtcGluZ10gLSBMZXZlbmJlcmctTWFycXVhcmR0IHBhcmFtZXRlclxuICogQHBhcmFtIHtudW1iZXJ9IFtvcHRpb25zLmdyYWRpZW50RGlmZmVyZW5jZSA9IDEwZS0yXSAtIEFkanVzdG1lbnQgZm9yIGRlY3JlYXNlIHRoZSBkYW1waW5nIHBhcmFtZXRlclxuICogQHBhcmFtIHtBcnJheTxudW1iZXI+fSBbb3B0aW9ucy5taW5WYWx1ZXNdIC0gTWluaW11bSBhbGxvd2VkIHZhbHVlcyBmb3IgcGFyYW1ldGVyc1xuICogQHBhcmFtIHtBcnJheTxudW1iZXI+fSBbb3B0aW9ucy5tYXhWYWx1ZXNdIC0gTWF4aW11bSBhbGxvd2VkIHZhbHVlcyBmb3IgcGFyYW1ldGVyc1xuICogQHBhcmFtIHtBcnJheTxudW1iZXI+fSBbb3B0aW9ucy5pbml0aWFsVmFsdWVzXSAtIEFycmF5IG9mIGluaXRpYWwgcGFyYW1ldGVyIHZhbHVlc1xuICogQHBhcmFtIHtudW1iZXJ9IFtvcHRpb25zLm1heEl0ZXJhdGlvbnMgPSAxMDBdIC0gTWF4aW11bSBvZiBhbGxvd2VkIGl0ZXJhdGlvbnNcbiAqIEBwYXJhbSB7bnVtYmVyfSBbb3B0aW9ucy5lcnJvclRvbGVyYW5jZSA9IDEwZS0zXSAtIE1pbmltdW0gdW5jZXJ0YWludHkgYWxsb3dlZCBmb3IgZWFjaCBwb2ludFxuICogQHJldHVybiB7e3BhcmFtZXRlclZhbHVlczogQXJyYXk8bnVtYmVyPiwgcGFyYW1ldGVyRXJyb3I6IG51bWJlciwgaXRlcmF0aW9uczogbnVtYmVyfX1cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbGV2ZW5iZXJnTWFycXVhcmR0KFxuICBkYXRhLFxuICBwYXJhbWV0ZXJpemVkRnVuY3Rpb24sXG4gIG9wdGlvbnMgPSB7fSxcbikge1xuICBsZXQge1xuICAgIG1heEl0ZXJhdGlvbnMgPSAxMDAsXG4gICAgZ3JhZGllbnREaWZmZXJlbmNlID0gMTBlLTIsXG4gICAgZGFtcGluZyA9IDAsXG4gICAgZXJyb3JUb2xlcmFuY2UgPSAxMGUtMyxcbiAgICBtaW5WYWx1ZXMsXG4gICAgbWF4VmFsdWVzLFxuICAgIGluaXRpYWxWYWx1ZXMsXG4gIH0gPSBvcHRpb25zO1xuXG4gIGlmIChkYW1waW5nIDw9IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBkYW1waW5nIG9wdGlvbiBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyJyk7XG4gIH0gZWxzZSBpZiAoIWRhdGEueCB8fCAhZGF0YS55KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgZGF0YSBwYXJhbWV0ZXIgbXVzdCBoYXZlIHggYW5kIHkgZWxlbWVudHMnKTtcbiAgfSBlbHNlIGlmIChcbiAgICAhaXNBcnJheShkYXRhLngpIHx8XG4gICAgZGF0YS54Lmxlbmd0aCA8IDIgfHxcbiAgICAhaXNBcnJheShkYXRhLnkpIHx8XG4gICAgZGF0YS55Lmxlbmd0aCA8IDJcbiAgKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ1RoZSBkYXRhIHBhcmFtZXRlciBlbGVtZW50cyBtdXN0IGJlIGFuIGFycmF5IHdpdGggbW9yZSB0aGFuIDIgcG9pbnRzJyxcbiAgICApO1xuICB9IGVsc2UgaWYgKGRhdGEueC5sZW5ndGggIT09IGRhdGEueS5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBkYXRhIHBhcmFtZXRlciBlbGVtZW50cyBtdXN0IGhhdmUgdGhlIHNhbWUgc2l6ZScpO1xuICB9XG5cbiAgbGV0IHBhcmFtZXRlcnMgPVxuICAgIGluaXRpYWxWYWx1ZXMgfHwgbmV3IEFycmF5KHBhcmFtZXRlcml6ZWRGdW5jdGlvbi5sZW5ndGgpLmZpbGwoMSk7XG4gIGxldCBwYXJMZW4gPSBwYXJhbWV0ZXJzLmxlbmd0aDtcbiAgbWF4VmFsdWVzID0gbWF4VmFsdWVzIHx8IG5ldyBBcnJheShwYXJMZW4pLmZpbGwoTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpO1xuICBtaW5WYWx1ZXMgPSBtaW5WYWx1ZXMgfHwgbmV3IEFycmF5KHBhckxlbikuZmlsbChOdW1iZXIuTUlOX1NBRkVfSU5URUdFUik7XG5cbiAgaWYgKG1heFZhbHVlcy5sZW5ndGggIT09IG1pblZhbHVlcy5sZW5ndGgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ21pblZhbHVlcyBhbmQgbWF4VmFsdWVzIG11c3QgYmUgdGhlIHNhbWUgc2l6ZScpO1xuICB9XG5cbiAgaWYgKCFpc0FycmF5KHBhcmFtZXRlcnMpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbml0aWFsVmFsdWVzIG11c3QgYmUgYW4gYXJyYXknKTtcbiAgfVxuXG4gIGxldCBlcnJvciA9IGVycm9yQ2FsY3VsYXRpb24oZGF0YSwgcGFyYW1ldGVycywgcGFyYW1ldGVyaXplZEZ1bmN0aW9uKTtcblxuICBsZXQgY29udmVyZ2VkID0gZXJyb3IgPD0gZXJyb3JUb2xlcmFuY2U7XG5cbiAgbGV0IGl0ZXJhdGlvbjtcbiAgZm9yIChpdGVyYXRpb24gPSAwOyBpdGVyYXRpb24gPCBtYXhJdGVyYXRpb25zICYmICFjb252ZXJnZWQ7IGl0ZXJhdGlvbisrKSB7XG4gICAgcGFyYW1ldGVycyA9IHN0ZXAoXG4gICAgICBkYXRhLFxuICAgICAgcGFyYW1ldGVycyxcbiAgICAgIGRhbXBpbmcsXG4gICAgICBncmFkaWVudERpZmZlcmVuY2UsXG4gICAgICBwYXJhbWV0ZXJpemVkRnVuY3Rpb24sXG4gICAgKTtcblxuICAgIGZvciAobGV0IGsgPSAwOyBrIDwgcGFyTGVuOyBrKyspIHtcbiAgICAgIHBhcmFtZXRlcnNba10gPSBNYXRoLm1pbihcbiAgICAgICAgTWF0aC5tYXgobWluVmFsdWVzW2tdLCBwYXJhbWV0ZXJzW2tdKSxcbiAgICAgICAgbWF4VmFsdWVzW2tdLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBlcnJvciA9IGVycm9yQ2FsY3VsYXRpb24oZGF0YSwgcGFyYW1ldGVycywgcGFyYW1ldGVyaXplZEZ1bmN0aW9uKTtcbiAgICBpZiAoaXNOYU4oZXJyb3IpKSBicmVhaztcbiAgICBjb252ZXJnZWQgPSBlcnJvciA8PSBlcnJvclRvbGVyYW5jZTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgcGFyYW1ldGVyVmFsdWVzOiBwYXJhbWV0ZXJzLFxuICAgIHBhcmFtZXRlckVycm9yOiBlcnJvcixcbiAgICBpdGVyYXRpb25zOiBpdGVyYXRpb24sXG4gIH07XG59XG4iLCJpbXBvcnQgeyBkbUxpbmVhckluZGV4IH0gZnJvbSAnLi4vZGlzdGFuY2UtbWF0cml4JztcbmV4cG9ydCBjbGFzcyBUU05FIHtcbiAgICBwZXJwbGV4aXR5O1xuICAgIGRpbTtcbiAgICBlcHNpbG9uO1xuICAgIGl0ZXIgPSAwO1xuICAgIE47XG4gICAgUDtcbiAgICBZO1xuICAgIGdhaW5zO1xuICAgIHlzdGVwO1xuICAgIHJhbmRvbSA9IE1hdGgucmFuZG9tO1xuICAgIGFzc2VydChjb25kaXRpb24sIG1lc3NhZ2UpIHtcbiAgICAgICAgaWYgKCFjb25kaXRpb24pXG4gICAgICAgICAgICB0aHJvdyBtZXNzYWdlIHx8ICdBc3NlcnRpb24gZmFpbGVkJztcbiAgICB9XG4gICAgLy8gc3ludGF4IHN1Z2FyXG4gICAgZ2V0b3B0KG9wdCwgZmllbGQsIGRlZmF1bHR2YWwpIHtcbiAgICAgICAgaWYgKG9wdC5oYXNPd25Qcm9wZXJ0eShmaWVsZCkpXG4gICAgICAgICAgICByZXR1cm4gb3B0W2ZpZWxkXTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHR2YWw7XG4gICAgfVxuICAgIC8vIHJldHVybiAwIG1lYW4gdW5pdCBzdGFuZGFyZCBkZXZpYXRpb24gcmFuZG9tIG51bWJlclxuICAgIHJldHVyblYgPSBmYWxzZTtcbiAgICB2VmFsdWUgPSAwLjA7XG4gICAgZ2F1c3NSYW5kb20oKSB7XG4gICAgICAgIGlmICh0aGlzLnJldHVyblYpIHtcbiAgICAgICAgICAgIHRoaXMucmV0dXJuViA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudlZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHUgPSAyICogdGhpcy5yYW5kb20oKSAtIDE7XG4gICAgICAgIGNvbnN0IHYgPSAyICogdGhpcy5yYW5kb20oKSAtIDE7XG4gICAgICAgIGNvbnN0IHIgPSB1ICogdSArIHYgKiB2O1xuICAgICAgICBpZiAociA9PT0gMCB8fCByID4gMSlcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdhdXNzUmFuZG9tKCk7XG4gICAgICAgIGNvbnN0IGMgPSBNYXRoLnNxcnQoLTIgKiBNYXRoLmxvZyhyKSAvIHIpO1xuICAgICAgICB0aGlzLnZWYWx1ZSA9IHYgKiBjOyAvLyBjYWNoZSB0aGlzIGZvciBuZXh0IGZ1bmN0aW9uIGNhbGwgZm9yIGVmZmljaWVuY3lcbiAgICAgICAgdGhpcy5yZXR1cm5WID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHUgKiBjO1xuICAgIH1cbiAgICAvLyByZXR1cm4gcmFuZG9tIG5vcm1hbCBudW1iZXJcbiAgICByYW5kbihtdSwgc3RkKSB7XG4gICAgICAgIHJldHVybiBtdSArIHRoaXMuZ2F1c3NSYW5kb20oKSAqIHN0ZDtcbiAgICB9XG4gICAgLy8gdXRpbGl0aXR5IHRoYXQgY3JlYXRlcyBjb250aWd1b3VzIHZlY3RvciBvZiB6ZXJvcyBvZiBzaXplIG5cbiAgICB6ZXJvcyhuKSB7XG4gICAgICAgIGlmICh0eXBlb2YgKG4pID09PSAndW5kZWZpbmVkJyB8fCBpc05hTihuKSlcbiAgICAgICAgICAgIHJldHVybiBuZXcgRmxvYXQzMkFycmF5KCk7XG4gICAgICAgIGlmICh0eXBlb2YgQXJyYXlCdWZmZXIgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAvLyBsYWNraW5nIGJyb3dzZXIgc3VwcG9ydFxuICAgICAgICAgICAgY29uc3QgYXJyID0gbmV3IEZsb2F0MzJBcnJheShuKTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbjsgaSsrKVxuICAgICAgICAgICAgICAgIGFycltpXSA9IDA7XG4gICAgICAgICAgICByZXR1cm4gYXJyO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBGbG9hdDMyQXJyYXkobik7IC8vIHR5cGVkIGFycmF5cyBhcmUgZmFzdGVyXG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gdXRpbGl0eSB0aGF0IHJldHVybnMgMmQgYXJyYXkgZmlsbGVkIHdpdGggcmFuZG9tIG51bWJlcnNcbiAgICAvLyBvciB3aXRoIHZhbHVlIHMsIGlmIHByb3ZpZGVkXG4gICAgcmFuZG4yZChuLCBkLCBzKSB7XG4gICAgICAgIGNvbnN0IHVzZXMgPSB0eXBlb2YgcyAhPT0gJ3VuZGVmaW5lZCc7XG4gICAgICAgIGNvbnN0IHggPSAobmV3IEFycmF5KG4pKS5maWxsKG51bGwpLm1hcCgoKSA9PiBuZXcgRmxvYXQzMkFycmF5KGQpKTtcbiAgICAgICAgaWYgKHVzZXMpIHtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbjsgaSsrKVxuICAgICAgICAgICAgICAgIHhbaV0gPSBuZXcgRmxvYXQzMkFycmF5KGQpLmZpbGwocyk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG47IGkrKykge1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgZDsgaisrKVxuICAgICAgICAgICAgICAgICAgICB4W2ldW2pdID0gdGhpcy5yYW5kbigwLjAsIDFlLTQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB4O1xuICAgIH1cbiAgICAvLyBjb21wdXRlIEwyIGRpc3RhbmNlIGJldHdlZW4gdHdvIHZlY3RvcnNcbiAgICBsMih4MSwgeDIpIHtcbiAgICAgICAgY29uc3QgRCA9IHgxLmxlbmd0aDtcbiAgICAgICAgbGV0IGQgPSAwO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IEQ7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgeDFpID0geDFbaV07XG4gICAgICAgICAgICBjb25zdCB4MmkgPSB4MltpXTtcbiAgICAgICAgICAgIGQgKz0gKHgxaSAtIHgyaSkgKiAoeDFpIC0geDJpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZDtcbiAgICB9XG4gICAgLy8gY29tcHV0ZSBwYWlyd2lzZSBkaXN0YW5jZSBpbiBhbGwgdmVjdG9ycyBpbiBYXG4gICAgeHRvZChYKSB7XG4gICAgICAgIGNvbnN0IE4gPSBYLmxlbmd0aDtcbiAgICAgICAgY29uc3QgZGlzdCA9IHRoaXMuemVyb3MoTiAqIE4pOyAvLyBhbGxvY2F0ZSBjb250aWd1b3VzIGFycmF5XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgTjsgaSsrKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBqID0gaSArIDE7IGogPCBOOyBqKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBkID0gdGhpcy5sMihYW2ldLCBYW2pdKTtcbiAgICAgICAgICAgICAgICBkaXN0W2kgKiBOICsgal0gPSBkO1xuICAgICAgICAgICAgICAgIGRpc3RbaiAqIE4gKyBpXSA9IGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRpc3Q7XG4gICAgfVxuICAgIGdldEl0ZXJTaXplKHJvd1NpemUpIHtcbiAgICAgICAgaWYgKHJvd1NpemUgPD0gMjAwMClcbiAgICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgIGVsc2UgaWYgKHJvd1NpemUgPD0gMzAwMClcbiAgICAgICAgICAgIHJldHVybiA5MDtcbiAgICAgICAgZWxzZSBpZiAocm93U2l6ZSA8PSA1MDAwKVxuICAgICAgICAgICAgcmV0dXJuIDgwO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gNzA7XG4gICAgfVxuICAgIC8vIGNvbXB1dGUgKHBfe2l8an0gKyBwX3tqfGl9KS8oMm4pXG4gICAgZDJwKEQsIHBlcnBsZXhpdHksIHRvbCwgcm93U2l6ZSkge1xuICAgICAgICAvLyBjb25zdCBuZiA9IE1hdGguc3FydChELmxlbmd0aCk7IC8vIHRoaXMgYmV0dGVyIGJlIGFuIGludGVnZXJcbiAgICAgICAgLy8gY29uc3QgbiA9IE1hdGguZmxvb3IobmYpO1xuICAgICAgICAvLyB0aGlzLmFzc2VydChuID09PSBuZiwgJ0Qgc2hvdWxkIGhhdmUgc3F1YXJlIG51bWJlciBvZiBlbGVtZW50cy4nKTtcbiAgICAgICAgY29uc3QgaW5kZXhlciA9IGRtTGluZWFySW5kZXgocm93U2l6ZSk7XG4gICAgICAgIGNvbnN0IGRpc3RhbmNlcyA9IG5ldyBGbG9hdDMyQXJyYXkocm93U2l6ZSAqIHJvd1NpemUpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJvd1NpemU7IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgcm93U2l6ZTsgaisrKVxuICAgICAgICAgICAgICAgIGRpc3RhbmNlc1tpICogcm93U2l6ZSArIGpdID0gZGlzdGFuY2VzW2ogKiByb3dTaXplICsgaV0gPSBEW2luZGV4ZXIoaSwgaildO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG4gPSByb3dTaXplO1xuICAgICAgICBjb25zdCBoVGFyZ2V0ID0gTWF0aC5sb2cocGVycGxleGl0eSk7IC8vIHRhcmdldCBlbnRyb3B5IG9mIGRpc3RyaWJ1dGlvblxuICAgICAgICBjb25zdCBQID0gdGhpcy56ZXJvcyhuICogbik7IC8vIHRlbXBvcmFyeSBwcm9iYWJpbGl0eSBtYXRyaXhcbiAgICAgICAgY29uc3QgcHJvdyA9IHRoaXMuemVyb3Mobik7IC8vIGEgdGVtcG9yYXJ5IHN0b3JhZ2UgY29tcGFydG1lbnRcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBiZXRhbWluID0gLUluZmluaXR5O1xuICAgICAgICAgICAgbGV0IGJldGFtYXggPSBJbmZpbml0eTtcbiAgICAgICAgICAgIGxldCBiZXRhID0gMTsgLy8gaW5pdGlhbCB2YWx1ZSBvZiBwcmVjaXNpb25cbiAgICAgICAgICAgIGxldCBkb25lID0gZmFsc2U7XG4gICAgICAgICAgICBjb25zdCBtYXh0cmllcyA9IE1hdGguZmxvb3IodGhpcy5nZXRJdGVyU2l6ZShyb3dTaXplKSAvIDUpO1xuICAgICAgICAgICAgLy8gcGVyZm9ybSBiaW5hcnkgc2VhcmNoIHRvIGZpbmQgYSBzdWl0YWJsZSBwcmVjaXNpb24gYmV0YVxuICAgICAgICAgICAgLy8gc28gdGhhdCB0aGUgZW50cm9weSBvZiB0aGUgZGlzdHJpYnV0aW9uIGlzIGFwcHJvcHJpYXRlXG4gICAgICAgICAgICBsZXQgbnVtID0gMDtcbiAgICAgICAgICAgIHdoaWxlICghZG9uZSkge1xuICAgICAgICAgICAgICAgIC8vZGVidWdnZXI7XG4gICAgICAgICAgICAgICAgLy8gY29tcHV0ZSBlbnRyb3B5IGFuZCBrZXJuZWwgcm93IHdpdGggYmV0YSBwcmVjaXNpb25cbiAgICAgICAgICAgICAgICBsZXQgcHN1bSA9IDAuMDtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IG47IGorKykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwaiA9IGkgPT09IGogPyAwIDogTWF0aC5leHAoLWRpc3RhbmNlc1tpICogbiArIGpdICogYmV0YSk7XG4gICAgICAgICAgICAgICAgICAgIHByb3dbal0gPSBwajtcbiAgICAgICAgICAgICAgICAgICAgcHN1bSArPSBwajtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gbm9ybWFsaXplIHAgYW5kIGNvbXB1dGUgZW50cm9weVxuICAgICAgICAgICAgICAgIGxldCBuSGVyZSA9IDAuMDtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IG47IGorKykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcGo7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwc3VtID09PSAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgcGogPSAwO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBwaiA9IHByb3dbal0gLyBwc3VtO1xuICAgICAgICAgICAgICAgICAgICBwcm93W2pdID0gcGo7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwaiA+IDFlLTcpXG4gICAgICAgICAgICAgICAgICAgICAgICBuSGVyZSAtPSBwaiAqIE1hdGgubG9nKHBqKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gYWRqdXN0IGJldGEgYmFzZWQgb24gcmVzdWx0XG4gICAgICAgICAgICAgICAgaWYgKG5IZXJlID4gaFRhcmdldCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBlbnRyb3B5IHdhcyB0b28gaGlnaCAoZGlzdHJpYnV0aW9uIHRvbyBkaWZmdXNlKVxuICAgICAgICAgICAgICAgICAgICAvLyBzbyB3ZSBuZWVkIHRvIGluY3JlYXNlIHRoZSBwcmVjaXNpb24gZm9yIG1vcmUgcGVha3kgZGlzdHJpYnV0aW9uXG4gICAgICAgICAgICAgICAgICAgIGJldGFtaW4gPSBiZXRhOyAvLyBtb3ZlIHVwIHRoZSBib3VuZHNcbiAgICAgICAgICAgICAgICAgICAgaWYgKGJldGFtYXggPT09IEluZmluaXR5KVxuICAgICAgICAgICAgICAgICAgICAgICAgYmV0YSA9IGJldGEgKiAyO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBiZXRhID0gKGJldGEgKyBiZXRhbWF4KSAvIDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAvLyBjb252ZXJzZSBjYXNlLiBtYWtlIGRpc3RydWJ0aW9uIGxlc3MgcGVha3lcbiAgICAgICAgICAgICAgICAgICAgYmV0YW1heCA9IGJldGE7XG4gICAgICAgICAgICAgICAgICAgIGlmIChiZXRhbWluID09PSAtSW5maW5pdHkpXG4gICAgICAgICAgICAgICAgICAgICAgICBiZXRhID0gYmV0YSAvIDI7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGJldGEgPSAoYmV0YSArIGJldGFtaW4pIC8gMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gc3RvcHBpbmcgY29uZGl0aW9uczogdG9vIG1hbnkgdHJpZXMgb3IgZ290IGEgZ29vZCBwcmVjaXNpb25cbiAgICAgICAgICAgICAgICBudW0rKztcbiAgICAgICAgICAgICAgICBpZiAoTWF0aC5hYnMobkhlcmUgLSBoVGFyZ2V0KSA8IHRvbClcbiAgICAgICAgICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgaWYgKG51bSA+PSBtYXh0cmllcylcbiAgICAgICAgICAgICAgICAgICAgZG9uZSA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnZGF0YSBwb2ludCAnICsgaSArICcgZ2V0cyBwcmVjaXNpb24gJyArIGJldGEgKyAnIGFmdGVyICcgKyBudW0gKyAnIGJpbmFyeSBzZWFyY2ggc3RlcHMuJyk7XG4gICAgICAgICAgICAvLyBjb3B5IG92ZXIgdGhlIGZpbmFsIHByb3cgdG8gUCBhdCByb3cgaVxuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBuOyBqKyspXG4gICAgICAgICAgICAgICAgUFtpICogbiArIGpdID0gcHJvd1tqXTtcbiAgICAgICAgfSAvLyBlbmQgbG9vcCBvdmVyIGV4YW1wbGVzIGlcbiAgICAgICAgLy8gc3ltbWV0cml6ZSBQIGFuZCBub3JtYWxpemUgaXQgdG8gc3VtIHRvIDEgb3ZlciBhbGwgaWpcbiAgICAgICAgY29uc3QgcE91dCA9IHRoaXMuemVyb3MobiAqIG4pO1xuICAgICAgICBjb25zdCBOMiA9IG4gKiAyO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG47IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBuOyBqKyspXG4gICAgICAgICAgICAgICAgcE91dFtpICogbiArIGpdID0gTWF0aC5tYXgoKFBbaSAqIG4gKyBqXSArIFBbaiAqIG4gKyBpXSkgLyBOMiwgMWUtMTAwKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcE91dDtcbiAgICB9XG4gICAgLy8gaGVscGVyIGZ1bmN0aW9uXG4gICAgc2lnbih4KSB7IHJldHVybiB4ID4gMCA/IDEgOiB4IDwgMCA/IC0xIDogMDsgfVxuICAgIGNvbnN0cnVjdG9yKG9wdCkge1xuICAgICAgICBvcHQgPSBvcHQgfHwge307XG4gICAgICAgIHRoaXMucGVycGxleGl0eSA9IHRoaXMuZ2V0b3B0KG9wdCwgJ3BlcnBsZXhpdHknLCAzMCk7IC8vIGVmZmVjdGl2ZSBudW1iZXIgb2YgbmVhcmVzdCBuZWlnaGJvcnNcbiAgICAgICAgdGhpcy5kaW0gPSB0aGlzLmdldG9wdChvcHQsICdkaW0nLCAyKTsgLy8gYnkgZGVmYXVsdCAyLUQgdFNORVxuICAgICAgICB0aGlzLmVwc2lsb24gPSB0aGlzLmdldG9wdChvcHQsICdlcHNpbG9uJywgMTApOyAvLyBsZWFybmluZyByYXRlXG4gICAgICAgIHRoaXMucmFuZG9tID0gdGhpcy5nZXRvcHQob3B0LCAncmFuZG9tJywgTWF0aC5yYW5kb20pOyAvLyByYW5kb20gbnVtYmVyIGdlbmVyYXRvclxuICAgIH1cbiAgICAvLyB0aGlzIGZ1bmN0aW9uIHRha2VzIGEgc2V0IG9mIGhpZ2gtZGltZW5zaW9uYWwgcG9pbnRzXG4gICAgLy8gYW5kIGNyZWF0ZXMgbWF0cml4IFAgZnJvbSB0aGVtIHVzaW5nIGdhdXNzaWFuIGtlcm5lbFxuICAgIGluaXREYXRhUmF3KFgpIHtcbiAgICAgICAgY29uc3QgTiA9IFgubGVuZ3RoO1xuICAgICAgICBjb25zdCBEID0gWFswXS5sZW5ndGg7XG4gICAgICAgIHRoaXMuYXNzZXJ0KE4gPiAwLCAnIFggaXMgZW1wdHk/IFlvdSBtdXN0IGhhdmUgc29tZSBkYXRhIScpO1xuICAgICAgICB0aGlzLmFzc2VydChEID4gMCwgJyBYWzBdIGlzIGVtcHR5PyBXaGVyZSBpcyB0aGUgZGF0YT8nKTtcbiAgICAgICAgY29uc3QgZGlzdHMgPSB0aGlzLnh0b2QoWCk7IC8vIGNvbnZlcnQgWCB0byBkaXN0YW5jZXMgdXNpbmcgZ2F1c3NpYW4ga2VybmVsXG4gICAgICAgIHRoaXMuUCA9IHRoaXMuZDJwKGRpc3RzLCB0aGlzLnBlcnBsZXhpdHksIDFlLTQsIEQpOyAvLyBhdHRhY2ggdG8gb2JqZWN0XG4gICAgICAgIHRoaXMuTiA9IE47IC8vIGJhY2sgdXAgdGhlIHNpemUgb2YgdGhlIGRhdGFzZXRcbiAgICAgICAgdGhpcy5pbml0U29sdXRpb24oKTsgLy8gcmVmcmVzaCB0aGlzXG4gICAgfVxuICAgIC8vIHRoaXMgZnVuY3Rpb24gdGFrZXMgYSBnaXZlbiBkaXN0YW5jZSBtYXRyaXggYW5kIGNyZWF0ZXNcbiAgICAvLyBtYXRyaXggUCBmcm9tIHRoZW0uXG4gICAgLy8gRCBpcyBhc3N1bWVkIHRvIGJlIHByb3ZpZGVkIGFzIGEgbGlzdCBvZiBsaXN0cywgYW5kIHNob3VsZCBiZSBzeW1tZXRyaWNcbiAgICBpbml0RGF0YURpc3QoRCwgcm93U2l6ZSkge1xuICAgICAgICBjb25zdCBOID0gRC5sZW5ndGg7XG4gICAgICAgIHRoaXMuYXNzZXJ0KE4gPiAwLCAnIFggaXMgZW1wdHk/IFlvdSBtdXN0IGhhdmUgc29tZSBkYXRhIScpO1xuICAgICAgICAvLyBjb252ZXJ0IEQgdG8gYSAoZmFzdCkgdHlwZWQgYXJyYXkgdmVyc2lvblxuICAgICAgICAvLyBkaXN0cy5mb3JFYWNoKChkKSA9PiBjb25zb2xlLmxvZyhkKSk7XG4gICAgICAgIGNvbnNvbGUudGltZSgnZGlzdGFuY2VzIHRvIG1hdHJpeCcpO1xuICAgICAgICB0aGlzLlAgPSB0aGlzLmQycChELCB0aGlzLnBlcnBsZXhpdHksIDFlLTQsIHJvd1NpemUpO1xuICAgICAgICBjb25zb2xlLnRpbWVFbmQoJ2Rpc3RhbmNlcyB0byBtYXRyaXgnKTtcbiAgICAgICAgdGhpcy5OID0gcm93U2l6ZTtcbiAgICAgICAgdGhpcy5pbml0U29sdXRpb24oKTsgLy8gcmVmcmVzaCB0aGlzXG4gICAgfVxuICAgIC8vIChyZSlpbml0aWFsaXplcyB0aGUgc29sdXRpb24gdG8gcmFuZG9tXG4gICAgaW5pdFNvbHV0aW9uKCkge1xuICAgICAgICAvLyBnZW5lcmF0ZSByYW5kb20gc29sdXRpb24gdG8gdC1TTkVcbiAgICAgICAgdGhpcy5ZID0gdGhpcy5yYW5kbjJkKHRoaXMuTiwgdGhpcy5kaW0pOyAvLyB0aGUgc29sdXRpb25cbiAgICAgICAgdGhpcy5nYWlucyA9IHRoaXMucmFuZG4yZCh0aGlzLk4sIHRoaXMuZGltLCAxLjApOyAvLyBzdGVwIGdhaW5zIHRvIGFjY2VsZXJhdGUgcHJvZ3Jlc3MgaW4gdW5jaGFuZ2luZyBkaXJlY3Rpb25zXG4gICAgICAgIHRoaXMueXN0ZXAgPSB0aGlzLnJhbmRuMmQodGhpcy5OLCB0aGlzLmRpbSwgMC4wKTsgLy8gbW9tZW50dW0gYWNjdW11bGF0b3JcbiAgICAgICAgdGhpcy5pdGVyID0gMDtcbiAgICB9XG4gICAgLy8gcmV0dXJuIHBvaW50ZXIgdG8gY3VycmVudCBzb2x1dGlvblxuICAgIGdldFNvbHV0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ZO1xuICAgIH1cbiAgICAvLyBwZXJmb3JtIGEgc2luZ2xlIHN0ZXAgb2Ygb3B0aW1pemF0aW9uIHRvIGltcHJvdmUgdGhlIGVtYmVkZGluZ1xuICAgIHN0ZXAoKSB7XG4gICAgICAgIHRoaXMuaXRlciArPSAxO1xuICAgICAgICBjb25zdCBOID0gdGhpcy5OO1xuICAgICAgICBjb25zdCBjZyA9IHRoaXMuY29zdEdyYWQodGhpcy5ZKTsgLy8gZXZhbHVhdGUgZ3JhZGllbnRcbiAgICAgICAgY29uc3QgY29zdCA9IGNnLmNvc3Q7XG4gICAgICAgIGNvbnN0IGdyYWQgPSBjZy5ncmFkO1xuICAgICAgICAvLyBwZXJmb3JtIGdyYWRpZW50IHN0ZXBcbiAgICAgICAgY29uc3QgeW1lYW4gPSB0aGlzLnplcm9zKHRoaXMuZGltKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGQgPSAwOyBkIDwgdGhpcy5kaW07IGQrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGdpZCA9IGdyYWRbaV1bZF07XG4gICAgICAgICAgICAgICAgY29uc3Qgc2lkID0gdGhpcy55c3RlcFtpXVtkXTtcbiAgICAgICAgICAgICAgICBjb25zdCBnYWluaWQgPSB0aGlzLmdhaW5zW2ldW2RdO1xuICAgICAgICAgICAgICAgIC8vIGNvbXB1dGUgZ2FpbiB1cGRhdGVcbiAgICAgICAgICAgICAgICBsZXQgbmV3Z2FpbiA9IHRoaXMuc2lnbihnaWQpID09PSB0aGlzLnNpZ24oc2lkKSA/IGdhaW5pZCAqIDAuOCA6IGdhaW5pZCArIDAuMjtcbiAgICAgICAgICAgICAgICBpZiAobmV3Z2FpbiA8IDAuMDEpXG4gICAgICAgICAgICAgICAgICAgIG5ld2dhaW4gPSAwLjAxOyAvLyBjbGFtcFxuICAgICAgICAgICAgICAgIHRoaXMuZ2FpbnNbaV1bZF0gPSBuZXdnYWluOyAvLyBzdG9yZSBmb3IgbmV4dCB0dXJuXG4gICAgICAgICAgICAgICAgLy8gY29tcHV0ZSBtb21lbnR1bSBzdGVwIGRpcmVjdGlvblxuICAgICAgICAgICAgICAgIGNvbnN0IG1vbXZhbCA9IHRoaXMuaXRlciA8IDI1MCA/IDAuNSA6IDAuODtcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdzaWQgPSBtb212YWwgKiBzaWQgLSB0aGlzLmVwc2lsb24gKiBuZXdnYWluICogZ3JhZFtpXVtkXTtcbiAgICAgICAgICAgICAgICB0aGlzLnlzdGVwW2ldW2RdID0gbmV3c2lkOyAvLyByZW1lbWJlciB0aGUgc3RlcCB3ZSB0b29rXG4gICAgICAgICAgICAgICAgLy8gc3RlcCFcbiAgICAgICAgICAgICAgICB0aGlzLllbaV1bZF0gKz0gbmV3c2lkO1xuICAgICAgICAgICAgICAgIHltZWFuW2RdICs9IHRoaXMuWVtpXVtkXTsgLy8gYWNjdW11bGF0ZSBtZWFuIHNvIHRoYXQgd2UgY2FuIGNlbnRlciBsYXRlclxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIHJlcHJvamVjdCBZIHRvIGJlIHplcm8gbWVhblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IE47IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgZCA9IDA7IGQgPCB0aGlzLmRpbTsgZCsrKVxuICAgICAgICAgICAgICAgIHRoaXMuWVtpXVtkXSAtPSB5bWVhbltkXSAvIE47XG4gICAgICAgIH1cbiAgICAgICAgLy9pZih0aGlzLml0ZXIlMTAwPT09MCkgY29uc29sZS5sb2coJ2l0ZXIgJyArIHRoaXMuaXRlciArICcsIGNvc3Q6ICcgKyBjb3N0KTtcbiAgICAgICAgcmV0dXJuIGNvc3Q7IC8vIHJldHVybiBjdXJyZW50IGNvc3RcbiAgICB9XG4gICAgLy8gZm9yIGRlYnVnZ2luZzogZ3JhZGllbnQgY2hlY2tcbiAgICBkZWJ1Z0dyYWQoKSB7XG4gICAgICAgIGNvbnN0IE4gPSB0aGlzLk47XG4gICAgICAgIGNvbnN0IGNnID0gdGhpcy5jb3N0R3JhZCh0aGlzLlkpOyAvLyBldmFsdWF0ZSBncmFkaWVudFxuICAgICAgICAvL2NvbnN0IGNvc3QgPSBjZy5jb3N0O1xuICAgICAgICBjb25zdCBncmFkID0gY2cuZ3JhZDtcbiAgICAgICAgY29uc3QgZSA9IDFlLTU7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgTjsgaSsrKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBkID0gMDsgZCA8IHRoaXMuZGltOyBkKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCB5b2xkID0gdGhpcy5ZW2ldW2RdO1xuICAgICAgICAgICAgICAgIHRoaXMuWVtpXVtkXSA9IHlvbGQgKyBlO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNnMCA9IHRoaXMuY29zdEdyYWQodGhpcy5ZKTtcbiAgICAgICAgICAgICAgICB0aGlzLllbaV1bZF0gPSB5b2xkIC0gZTtcbiAgICAgICAgICAgICAgICBjb25zdCBjZzEgPSB0aGlzLmNvc3RHcmFkKHRoaXMuWSk7XG4gICAgICAgICAgICAgICAgY29uc3QgYW5hbHl0aWMgPSBncmFkW2ldW2RdO1xuICAgICAgICAgICAgICAgIGNvbnN0IG51bWVyaWNhbCA9IChjZzAuY29zdCAtIGNnMS5jb3N0KSAvICgyICogZSk7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coaSArICcsJyArIGQgKyAnOiBncmFkY2hlY2sgYW5hbHl0aWM6ICcgKyBhbmFseXRpYyArICcgdnMuIG51bWVyaWNhbDogJyArIG51bWVyaWNhbCk7XG4gICAgICAgICAgICAgICAgdGhpcy5ZW2ldW2RdID0geW9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBxdUFycjtcbiAgICAvLyByZXR1cm4gY29zdCBhbmQgZ3JhZGllbnQsIGdpdmVuIGFuIGFycmFuZ2VtZW50XG4gICAgY29zdEdyYWQoWSkge1xuICAgICAgICBjb25zdCBOID0gdGhpcy5OO1xuICAgICAgICBjb25zdCBkaW0gPSB0aGlzLmRpbTsgLy8gZGltIG9mIG91dHB1dCBzcGFjZVxuICAgICAgICBjb25zdCBQID0gdGhpcy5QO1xuICAgICAgICBjb25zdCBwbXVsID0gdGhpcy5pdGVyIDwgMTAwID8gNCA6IDE7IC8vIHRyaWNrIHRoYXQgaGVscHMgd2l0aCBsb2NhbCBvcHRpbWFcbiAgICAgICAgLy8gY29tcHV0ZSBjdXJyZW50IFEgZGlzdHJpYnV0aW9uLCB1bm5vcm1hbGl6ZWQgZmlyc3RcbiAgICAgICAgdGhpcy5xdUFyciA/Pz0gdGhpcy56ZXJvcyhOICogTik7XG4gICAgICAgIGxldCBxc3VtID0gMC4wO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IE47IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgTjsgaisrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZHN1bSA9IG5ldyBBcnJheShkaW0pLnJlZHVjZSgocHJldiwgXywgZCkgPT4gcHJldiArIE1hdGgucG93KFlbaV1bZF0gLSBZW2pdW2RdLCAyKSwgMCk7XG4gICAgICAgICAgICAgICAgY29uc3QgcXUgPSAxLjAgLyAoMS4wICsgZHN1bSk7IC8vIFN0dWRlbnQgdC1kaXN0cmlidXRpb25cbiAgICAgICAgICAgICAgICB0aGlzLnF1QXJyW2kgKiBOICsgal0gPSBxdTtcbiAgICAgICAgICAgICAgICB0aGlzLnF1QXJyW2ogKiBOICsgaV0gPSBxdTtcbiAgICAgICAgICAgICAgICBxc3VtICs9IDIgKiBxdTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBub3JtYWxpemUgUSBkaXN0cmlidXRpb24gdG8gc3VtIHRvIDFcbiAgICAgICAgLy9jb25zdCBOTiA9IE4gKiBOO1xuICAgICAgICAvL2NvbnN0IFEgPSB0aGlzLnplcm9zKE5OKTtcbiAgICAgICAgbGV0IGNvc3QgPSAwLjA7XG4gICAgICAgIGNvbnN0IGdyYWQgPSBuZXcgQXJyYXkoTikuZmlsbChudWxsKS5tYXAoKCkgPT4gKG5ldyBGbG9hdDMyQXJyYXkoZGltKSkuZmlsbCgwLjApKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgICAgICAgIC8vIGNvbnN0IGdzdW0gPSBuZXcgRmxvYXQzMkFycmF5KGRpbSkuZmlsbCgwLjApOyAvLyBpbml0IGdyYWQgZm9yIHBvaW50IGlcbiAgICAgICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IE47IGorKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IFEgPSBNYXRoLm1heCh0aGlzLnF1QXJyW2kgKiBOICsgal0gLyBxc3VtLCAxZS0xMDApO1xuICAgICAgICAgICAgICAgIGNvc3QgKz0gKC1QW2kgKiBOICsgal0gKiBNYXRoLmxvZyhRKSkgKiAyOyAvLyBhY2N1bXVsYXRlIGNvc3QgKHRoZSBub24tY29uc3RhbnQgcG9ydGlvbiBhdCBsZWFzdC4uLilcbiAgICAgICAgICAgICAgICBjb25zdCBwcmVtdWx0ID0gNCAqIChwbXVsICogUFtpICogTiArIGpdIC0gUSkgKiB0aGlzLnF1QXJyW2kgKiBOICsgal07XG4gICAgICAgICAgICAgICAgLy9jb25zb2xlLmxvZyhwcmVtdWx0LCBRLCBpLCBqKTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBkID0gMDsgZCA8IGRpbTsgZCsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGdyYWRbaV1bZF0gKz0gcHJlbXVsdCAqIChZW2ldW2RdIC0gWVtqXVtkXSk7XG4gICAgICAgICAgICAgICAgICAgIGdyYWRbal1bZF0gKz0gcHJlbXVsdCAqIChZW2pdW2RdIC0gWVtpXVtkXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy9ncmFkW2ldID0gZ3N1bTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geyBjb3N0LCBncmFkIH07XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pZEMxemJtVXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMExYTnVaUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFTeFBRVUZQTEVWQlFVTXNZVUZCWVN4RlFVRkRMRTFCUVUwc2IwSkJRVzlDTEVOQlFVTTdRVUZIYWtRc1RVRkJUU3hQUVVGUExFbEJRVWs3U1VGRFVDeFZRVUZWTEVOQlFWTTdTVUZEYmtJc1IwRkJSeXhEUVVGVE8wbEJRMW9zVDBGQlR5eERRVUZUTzBsQlEyaENMRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRFZDeERRVUZETEVOQlFWVTdTVUZEV0N4RFFVRkRMRU5CUVdkQ08wbEJRMnBDTEVOQlFVTXNRMEZCVXp0SlFVTldMRXRCUVVzc1EwRkJVenRKUVVOa0xFdEJRVXNzUTBGQlV6dEpRVU5rTEUxQlFVMHNSMEZCYVVJc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF6dEpRVU51UXl4TlFVRk5MRU5CUVVNc1UwRkJZeXhGUVVGRkxFOUJRVms3VVVGRGVrTXNTVUZCU1N4RFFVRkRMRk5CUVZNN1dVRkJSU3hOUVVGTkxFOUJRVThzU1VGQlNTeHJRa0ZCYTBJc1EwRkJRenRKUVVOMFJDeERRVUZETzBsQlJVUXNaVUZCWlR0SlFVTlFMRTFCUVUwc1EwRkJReXhIUVVGMVFpeEZRVUZGTEV0QlFXRXNSVUZCUlN4VlFVRmxPMUZCUTNCRkxFbEJRVWtzUjBGQlJ5eERRVUZETEdOQlFXTXNRMEZCUXl4TFFVRkxMRU5CUVVNN1dVRkRNMElzVDBGQlR5eEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN08xbEJSV3hDTEU5QlFVOHNWVUZCVlN4RFFVRkRPMGxCUTNSQ0xFTkJRVU03U1VGRlF5eHpSRUZCYzBRN1NVRkRPVU1zVDBGQlR5eEhRVUZITEV0QlFVc3NRMEZCUXp0SlFVTm9RaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlEzSkNMRmRCUVZjN1VVRkRWQ3hKUVVGSkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVWQlFVVTdXVUZEYUVJc1NVRkJTU3hEUVVGRExFOUJRVThzUjBGQlJ5eExRVUZMTEVOQlFVTTdXVUZEY2tJc1QwRkJUeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETzFOQlEzQkNPMUZCUTBRc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGFFTXNUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRhRU1zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFGQlEzaENMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXp0WlFVRkZMRTlCUVU4c1NVRkJTU3hEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETzFGQlEyaEVMRTFCUVUwc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVNeFF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eHRSRUZCYlVRN1VVRkRlRVVzU1VGQlNTeERRVUZETEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkRjRUlzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTJZc1EwRkJRenRKUVVWRUxEaENRVUU0UWp0SlFVTjBRaXhMUVVGTExFTkJRVU1zUlVGQlZTeEZRVUZGTEVkQlFWYzdVVUZEYmtNc1QwRkJUeXhGUVVGRkxFZEJRVWNzU1VGQlNTeERRVUZETEZkQlFWY3NSVUZCUlN4SFFVRkhMRWRCUVVjc1EwRkJRenRKUVVOMlF5eERRVUZETzBsQlJVUXNPRVJCUVRoRU8wbEJRM1JFTEV0QlFVc3NRMEZCUXl4RFFVRlRPMUZCUTNKQ0xFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRmRCUVZjc1NVRkJTU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlFVVXNUMEZCVHl4SlFVRkpMRmxCUVZrc1JVRkJSU3hEUVVGRE8xRkJRM1JGTEVsQlFVa3NUMEZCVHl4WFFVRlhMRXRCUVVzc1YwRkJWeXhGUVVGRk8xbEJRM1JETERCQ1FVRXdRanRaUVVNeFFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5vUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSVHRuUWtGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRM1pETEU5QlFVOHNSMEZCUnl4RFFVRkRPMU5CUTFvN1lVRkJUVHRaUVVOTUxFOUJRVThzU1VGQlNTeFpRVUZaTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXd3UWtGQk1FSTdVMEZEZGtRN1NVRkRTQ3hEUVVGRE8wbEJSVVFzTWtSQlFUSkVPMGxCUXpORUxDdENRVUVyUWp0SlFVTjJRaXhQUVVGUExFTkJRVU1zUTBGQlV5eEZRVUZGTEVOQlFWTXNSVUZCUlN4RFFVRlZPMUZCUXpsRExFMUJRVTBzU1VGQlNTeEhRVUZITEU5QlFVOHNRMEZCUXl4TFFVRkxMRmRCUVZjc1EwRkJRenRSUVVOMFF5eE5RVUZOTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWxCUVVrc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXl4SlFVRkpMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEyNUZMRWxCUVVrc1NVRkJTU3hGUVVGRk8xbEJRMUlzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVTdaMEpCUTNoQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1UwRkRkRU03WVVGQlRUdFpRVU5NTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1owSkJRekZDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZPMjlDUVVONFFpeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU03WVVGRGJrTTdVMEZEUmp0UlFVTkVMRTlCUVU4c1EwRkJReXhEUVVGRE8wbEJRMWdzUTBGQlF6dEpRVVZFTERCRFFVRXdRenRKUVVOc1F5eEZRVUZGTEVOQlFVTXNSVUZCV1N4RlFVRkZMRVZCUVZrN1VVRkRia01zVFVGQlRTeERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJRenRSUVVOd1FpeEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRWaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFsQlF6RkNMRTFCUVUwc1IwRkJSeXhIUVVGSExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTnNRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkRiRUlzUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRPMU5CUTJoRE8xRkJRMFFzVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEV0N4RFFVRkRPMGxCUlVRc1owUkJRV2RFTzBsQlEzaERMRWxCUVVrc1EwRkJReXhEUVVGNVFqdFJRVU53UXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETzFGQlEyNUNMRTFCUVUwc1NVRkJTU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zTkVKQlFUUkNPMUZCUXpWRUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZETVVJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdaMEpCUXpsQ0xFMUJRVTBzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU01UWl4SlFVRkpMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1owSkJRM0JDTEVsQlFVa3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0aFFVTnlRanRUUVVOR08xRkJRMFFzVDBGQlR5eEpRVUZKTEVOQlFVTTdTVUZEWkN4RFFVRkRPMGxCUlUwc1YwRkJWeXhEUVVGRExFOUJRV1U3VVVGRGFFTXNTVUZCU1N4UFFVRlBMRWxCUVVrc1NVRkJTVHRaUVVOcVFpeFBRVUZQTEVkQlFVY3NRMEZCUXp0aFFVTlNMRWxCUVVrc1QwRkJUeXhKUVVGSkxFbEJRVWs3V1VGRGRFSXNUMEZCVHl4RlFVRkZMRU5CUVVNN1lVRkRVQ3hKUVVGSkxFOUJRVThzU1VGQlNTeEpRVUZKTzFsQlEzUkNMRTlCUVU4c1JVRkJSU3hEUVVGRE96dFpRVVZXTEU5QlFVOHNSVUZCUlN4RFFVRkRPMGxCUTJRc1EwRkJRenRKUVVWRUxHMURRVUZ0UXp0SlFVTXpRaXhIUVVGSExFTkJRVU1zUTBGQlpTeEZRVUZGTEZWQlFXdENMRVZCUVVVc1IwRkJWeXhGUVVGRkxFOUJRV1U3VVVGRE0wVXNLMFJCUVN0RU8xRkJReTlFTERSQ1FVRTBRanRSUVVNMVFpeHhSVUZCY1VVN1VVRkRja1VzVFVGQlRTeFBRVUZQTEVkQlFVY3NZVUZCWVN4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8xRkJRM1pETEUxQlFVMHNVMEZCVXl4SFFVRkhMRWxCUVVrc1dVRkJXU3hEUVVGRExFOUJRVThzUjBGQlJ5eFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVTjBSQ3hMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1QwRkJUeXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFsQlEyaERMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1QwRkJUeXhGUVVGRkxFTkJRVU1zUlVGQlJUdG5Ra0ZEYkVNc1UwRkJVeXhEUVVGRExFTkJRVU1zUjBGQlJ5eFBRVUZQTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1UwRkJVeXhEUVVGRExFTkJRVU1zUjBGQlJ5eFBRVUZQTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRUUVVNNVJUdFJRVU5FTEUxQlFVMHNRMEZCUXl4SFFVRkhMRTlCUVU4c1EwRkJRenRSUVVOc1FpeE5RVUZOTEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETEVOQlFVTXNhVU5CUVdsRE8xRkJRM1pGTEUxQlFVMHNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc0swSkJRU3RDTzFGQlF6VkVMRTFCUVUwc1NVRkJTU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhyUTBGQmEwTTdVVUZET1VRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU14UWl4SlFVRkpMRTlCUVU4c1IwRkJSeXhEUVVGRExGRkJRVkVzUTBGQlF6dFpRVU40UWl4SlFVRkpMRTlCUVU4c1IwRkJSeXhSUVVGUkxFTkJRVU03V1VGRGRrSXNTVUZCU1N4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zTmtKQlFUWkNPMWxCUXpORExFbEJRVWtzU1VGQlNTeEhRVUZITEV0QlFVc3NRMEZCUXp0WlFVTnFRaXhOUVVGTkxGRkJRVkVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkZNMFFzTUVSQlFUQkVPMWxCUXpGRUxIbEVRVUY1UkR0WlFVTjZSQ3hKUVVGSkxFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZEV2l4UFFVRlBMRU5CUVVNc1NVRkJTU3hGUVVGRk8yZENRVU5hTEZkQlFWYzdaMEpCUlZnc2NVUkJRWEZFTzJkQ1FVTnlSQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eEhRVUZITEVOQlFVTTdaMEpCUTJZc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdHZRa0ZETVVJc1RVRkJUU3hGUVVGRkxFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVVc1UwRkJVeXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU03YjBKQlEycEZMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTTdiMEpCUTJJc1NVRkJTU3hKUVVGSkxFVkJRVVVzUTBGQlF6dHBRa0ZEV2p0blFrRkRSQ3hyUTBGQmEwTTdaMEpCUTJ4RExFbEJRVWtzUzBGQlN5eEhRVUZITEVkQlFVY3NRMEZCUXp0blFrRkRhRUlzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0dlFrRkRNVUlzU1VGQlNTeEZRVUZGTEVOQlFVTTdiMEpCUTFBc1NVRkJTU3hKUVVGSkxFdEJRVXNzUTBGQlF6dDNRa0ZEV2l4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRE96dDNRa0ZGVUN4RlFVRkZMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0dlFrRkZkRUlzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJRenR2UWtGRFlpeEpRVUZKTEVWQlFVVXNSMEZCUnl4SlFVRkpPM2RDUVVGRkxFdEJRVXNzU1VGQlNTeEZRVUZGTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF6dHBRa0ZETTBNN1owSkJSVVFzT0VKQlFUaENPMmRDUVVNNVFpeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRVZCUVVVN2IwSkJRMjVDTEd0RVFVRnJSRHR2UWtGRGJFUXNiVVZCUVcxRk8yOUNRVU51UlN4UFFVRlBMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zY1VKQlFYRkNPMjlDUVVOeVF5eEpRVUZKTEU5QlFVOHNTMEZCU3l4UlFVRlJPM2RDUVVGRkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPenQzUWtGQlRTeEpRVUZKTEVkQlFVY3NRMEZCUXl4SlFVRkpMRWRCUVVjc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzJsQ1FVTTNSVHR4UWtGQlRUdHZRa0ZEVEN3MlEwRkJOa003YjBKQlF6ZERMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU03YjBKQlEyWXNTVUZCU1N4UFFVRlBMRXRCUVVzc1EwRkJReXhSUVVGUk8zZENRVUZGTEVsQlFVa3NSMEZCUnl4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRE96dDNRa0ZCVFN4SlFVRkpMRWRCUVVjc1EwRkJReXhKUVVGSkxFZEJRVWNzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMmxDUVVNNVJUdG5Ra0ZGUkN3NFJFRkJPRVE3WjBKQlF6bEVMRWRCUVVjc1JVRkJSU3hEUVVGRE8yZENRVU5PTEVsQlFVa3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhMUVVGTExFZEJRVWNzVDBGQlR5eERRVUZETEVkQlFVY3NSMEZCUnp0dlFrRkJSU3hKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETzJkQ1FVTnFSQ3hKUVVGSkxFZEJRVWNzU1VGQlNTeFJRVUZSTzI5Q1FVRkZMRWxCUVVrc1IwRkJSeXhKUVVGSkxFTkJRVU03WVVGRGJFTTdXVUZGUkN3d1IwRkJNRWM3V1VGRE1VY3NlVU5CUVhsRE8xbEJRM3BETEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZPMmRDUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0VFFVTndSQ3hEUVVGRExESkNRVUV5UWp0UlFVVTNRaXgzUkVGQmQwUTdVVUZEZUVRc1RVRkJUU3hKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03VVVGREwwSXNUVUZCVFN4RlFVRkZMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5xUWl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRekZDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZPMmRDUVVONFFpeEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhGUVVGRkxFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdVMEZETVVVN1VVRkZSQ3hQUVVGUExFbEJRVWtzUTBGQlF6dEpRVU5rTEVOQlFVTTdTVUZGUkN4clFrRkJhMEk3U1VGRFZpeEpRVUZKTEVOQlFVTXNRMEZCVXl4SlFVRkpMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVVTVSQ3haUVVGWkxFZEJRWFZDTzFGQlEycERMRWRCUVVjc1IwRkJSeXhIUVVGSExFbEJRVWtzUlVGQlJTeERRVUZETzFGQlEyaENMRWxCUVVrc1EwRkJReXhWUVVGVkxFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRVZCUVVVc1dVRkJXU3hGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNkME5CUVhkRE8xRkJRemxHTEVsQlFVa3NRMEZCUXl4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVWQlFVVXNTMEZCU3l4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zYzBKQlFYTkNPMUZCUXpkRUxFbEJRVWtzUTBGQlF5eFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFVkJRVVVzVTBGQlV5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1owSkJRV2RDTzFGQlEyaEZMRWxCUVVrc1EwRkJReXhOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRVZCUVVVc1VVRkJVU3hGUVVGRkxFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMREJDUVVFd1FqdEpRVU51Uml4RFFVRkRPMGxCUlVRc2RVUkJRWFZFTzBsQlEzWkVMSFZFUVVGMVJEdEpRVU5vUkN4WFFVRlhMRU5CUVVNc1EwRkJiMEk3VVVGRGNrTXNUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF6dFJRVU51UWl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRPMUZCUTNSQ0xFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3gxUTBGQmRVTXNRMEZCUXl4RFFVRkRPMUZCUXpWRUxFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3h2UTBGQmIwTXNRMEZCUXl4RFFVRkRPMUZCUTNwRUxFMUJRVTBzUzBGQlN5eEhRVUZITEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5d3JRMEZCSzBNN1VVRkRNMFVzU1VGQlNTeERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRWxCUVVrc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEcxQ1FVRnRRanRSUVVOMlJTeEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExHdERRVUZyUXp0UlFVTTVReXhKUVVGSkxFTkJRVU1zV1VGQldTeEZRVUZGTEVOQlFVTXNRMEZCUXl4bFFVRmxPMGxCUTNSRExFTkJRVU03U1VGRlJDd3dSRUZCTUVRN1NVRkRNVVFzYzBKQlFYTkNPMGxCUTNSQ0xEQkZRVUV3UlR0SlFVTnVSU3haUVVGWkxFTkJRVU1zUTBGQlpTeEZRVUZGTEU5QlFXVTdVVUZEYkVRc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXp0UlFVTnVRaXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc2RVTkJRWFZETEVOQlFVTXNRMEZCUXp0UlFVTTFSQ3cwUTBGQk5FTTdVVUZETlVNc2QwTkJRWGRETzFGQlEzaERMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zY1VKQlFYRkNMRU5CUVVNc1EwRkJRenRSUVVOd1F5eEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEZRVUZGTEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1NVRkJTU3hGUVVGRkxFOUJRVThzUTBGQlF5eERRVUZETzFGQlEzSkVMRTlCUVU4c1EwRkJReXhQUVVGUExFTkJRVU1zY1VKQlFYRkNMRU5CUVVNc1EwRkJRenRSUVVOMlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRTlCUVU4c1EwRkJRenRSUVVOcVFpeEpRVUZKTEVOQlFVTXNXVUZCV1N4RlFVRkZMRU5CUVVNc1EwRkJReXhsUVVGbE8wbEJRM1JETEVOQlFVTTdTVUZGUkN4NVEwRkJlVU03U1VGRGJFTXNXVUZCV1R0UlFVTnFRaXh2UTBGQmIwTTdVVUZEY0VNc1NVRkJTU3hEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1pVRkJaVHRSUVVONFJDeEpRVUZKTEVOQlFVTXNTMEZCU3l4SFFVRkhMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1IwRkJSeXhGUVVGRkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNOa1JCUVRaRU8xRkJReTlITEVsQlFVa3NRMEZCUXl4TFFVRkxMRWRCUVVjc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RlFVRkZMRWxCUVVrc1EwRkJReXhIUVVGSExFVkJRVVVzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4MVFrRkJkVUk3VVVGRGVrVXNTVUZCU1N4RFFVRkRMRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRGFFSXNRMEZCUXp0SlFVVkVMSEZEUVVGeFF6dEpRVU01UWl4WFFVRlhPMUZCUTJoQ0xFOUJRVThzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTm9RaXhEUVVGRE8wbEJSVVFzYVVWQlFXbEZPMGxCUXpGRUxFbEJRVWs3VVVGRFZDeEpRVUZKTEVOQlFVTXNTVUZCU1N4SlFVRkpMRU5CUVVNc1EwRkJRenRSUVVObUxFMUJRVTBzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRha0lzVFVGQlRTeEZRVUZGTEVkQlFVY3NTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4dlFrRkJiMEk3VVVGRGRFUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1JVRkJSU3hEUVVGRExFbEJRVWtzUTBGQlF6dFJRVU55UWl4TlFVRk5MRWxCUVVrc1IwRkJSeXhGUVVGRkxFTkJRVU1zU1VGQlNTeERRVUZETzFGQlJYSkNMSGRDUVVGM1FqdFJRVU40UWl4TlFVRk5MRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOdVF5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXpGQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMmRDUVVOcVF5eE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdaMEpCUTNaQ0xFMUJRVTBzUjBGQlJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdaMEpCUXpkQ0xFMUJRVTBzVFVGQlRTeEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdaMEpCUldoRExITkNRVUZ6UWp0blFrRkRkRUlzU1VGQlNTeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUzBGQlN5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVkQlFVY3NSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFZEJRVWNzUjBGQlJ5eERRVUZETzJkQ1FVTTVSU3hKUVVGSkxFOUJRVThzUjBGQlJ5eEpRVUZKTzI5Q1FVRkZMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eFJRVUZSTzJkQ1FVTTFReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFOUJRVThzUTBGQlF5eERRVUZETEhOQ1FVRnpRanRuUWtGRmJFUXNhME5CUVd0RE8yZENRVU5zUXl4TlFVRk5MRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTTdaMEpCUXpORExFMUJRVTBzVFVGQlRTeEhRVUZITEUxQlFVMHNSMEZCUnl4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFOUJRVThzUjBGQlJ5eFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTnNSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFMUJRVTBzUTBGQlF5eERRVUZETERSQ1FVRTBRanRuUWtGRmRrUXNVVUZCVVR0blFrRkRVaXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFMUJRVTBzUTBGQlF6dG5Ra0ZGZGtJc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl3NFEwRkJPRU03WVVGRGVrVTdVMEZEUmp0UlFVVkVMRGhDUVVFNFFqdFJRVU01UWl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRekZDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1JVRkJSVHRuUWtGREwwSXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFOQlEyaERPMUZCUlVRc05rVkJRVFpGTzFGQlF6ZEZMRTlCUVU4c1NVRkJTU3hEUVVGRExFTkJRVU1zYzBKQlFYTkNPMGxCUTNKRExFTkJRVU03U1VGRlJDeG5RMEZCWjBNN1NVRkRla0lzVTBGQlV6dFJRVU5rTEUxQlFVMHNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRmFrSXNUVUZCVFN4RlFVRkZMRWRCUVVjc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXh2UWtGQmIwSTdVVUZEZEVRc2RVSkJRWFZDTzFGQlEzWkNMRTFCUVUwc1NVRkJTU3hIUVVGSExFVkJRVVVzUTBGQlF5eEpRVUZKTEVOQlFVTTdVVUZGY2tJc1RVRkJUU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETzFGQlEyWXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVNeFFpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRuUWtGRGFrTXNUVUZCVFN4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGRk1VSXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRE8yZENRVU40UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGRmJFTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRE8yZENRVU40UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGRmJFTXNUVUZCVFN4UlFVRlJMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVNMVFpeE5RVUZOTEZOQlFWTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhKUVVGSkxFZEJRVWNzUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTnNSQ3hQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExIZENRVUYzUWl4SFFVRkhMRkZCUVZFc1IwRkJSeXhyUWtGQmEwSXNSMEZCUnl4VFFVRlRMRU5CUVVNc1EwRkJRenRuUWtGRmFFY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN1lVRkRja0k3VTBGRFJqdEpRVU5JTEVOQlFVTTdTVUZGVHl4TFFVRkxMRU5CUVdkQ08wbEJRemRDTEdsRVFVRnBSRHRKUVVNeFF5eFJRVUZSTEVOQlFVTXNRMEZCWVR0UlFVTXpRaXhOUVVGTkxFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTJwQ0xFMUJRVTBzUjBGQlJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXh6UWtGQmMwSTdVVUZETlVNc1RVRkJUU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0UlFVVnFRaXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTVUZCU1N4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXh4UTBGQmNVTTdVVUZGTTBVc2NVUkJRWEZFTzFGQlEzSkVMRWxCUVVrc1EwRkJReXhMUVVGTExFdEJRVXNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGFrTXNTVUZCU1N4SlFVRkpMRWRCUVVjc1IwRkJSeXhEUVVGRE8xRkJRMllzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTXhRaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkRPVUlzVFVGQlRTeEpRVUZKTEVkQlFVY3NTVUZCU1N4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVsQlFVa3NSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdaMEpCUXpkR0xFMUJRVTBzUlVGQlJTeEhRVUZITEVkQlFVY3NSMEZCUnl4RFFVRkRMRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEhsQ1FVRjVRanRuUWtGRGVFUXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJRenRuUWtGRE0wSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJRenRuUWtGRE0wSXNTVUZCU1N4SlFVRkpMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU03WVVGRGFFSTdVMEZEUmp0UlFVTkVMSFZEUVVGMVF6dFJRVU4yUXl4dFFrRkJiVUk3VVVGRGJrSXNNa0pCUVRKQ08xRkJRek5DTEVsQlFVa3NTVUZCU1N4SFFVRkhMRWRCUVVjc1EwRkJRenRSUVVObUxFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEpRVUZKTEZsQlFWa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTJ4R0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZETVVJc2VVVkJRWGxGTzFsQlEzcEZMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzJkQ1FVTTVRaXhOUVVGTkxFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1IwRkJSeXhKUVVGSkxFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdaMEpCUTNwRUxFbEJRVWtzU1VGQlNTeERRVUZETEVOQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMSGxFUVVGNVJEdG5Ra0ZEY2tjc1RVRkJUU3hQUVVGUExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNTVUZCU1N4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dG5Ra0ZEZEVVc1owTkJRV2RETzJkQ1FVTm9ReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1IwRkJSeXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzI5Q1FVTTFRaXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1QwRkJUeXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yOUNRVU0xUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NUMEZCVHl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmxDUVVNM1F6dGhRVU5HTzFsQlEwUXNhVUpCUVdsQ08xTkJRMnhDTzFGQlJVUXNUMEZCVHl4RlFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVU1zUTBGQlF6dEpRVU4wUWl4RFFVRkRPME5CUTBvaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2UyUnRUR2x1WldGeVNXNWtaWGg5SUdaeWIyMGdKeTR1TDJScGMzUmhibU5sTFcxaGRISnBlQ2M3WEc1Y2JseHVaWGh3YjNKMElHTnNZWE56SUZSVFRrVWdlMXh1SUNCd2NtbDJZWFJsSUhCbGNuQnNaWGhwZEhrNklHNTFiV0psY2p0Y2JpQWdjSEpwZG1GMFpTQmthVzA2SUc1MWJXSmxjanRjYmlBZ2NISnBkbUYwWlNCbGNITnBiRzl1T2lCdWRXMWlaWEk3WEc0Z0lIQnlhWFpoZEdVZ2FYUmxjaUE5SURBN1hHNGdJSEJ5YVhaaGRHVWdUaUU2SUc1MWJXSmxjanRjYmlBZ2NISnBkbUYwWlNCUUlUb2dSbXh2WVhRek1rRnljbUY1TzF4dUlDQndjbWwyWVhSbElGa2hPaUJoYm5sYlhUdGNiaUFnY0hKcGRtRjBaU0JuWVdsdWN5RTZJR0Z1ZVZ0ZE8xeHVJQ0J3Y21sMllYUmxJSGx6ZEdWd0lUb2dZVzU1VzEwN1hHNGdJSEJ5YVhaaGRHVWdjbUZ1Wkc5dE9pQW9LU0E5UGlCdWRXMWlaWElnUFNCTllYUm9MbkpoYm1SdmJUdGNiaUFnY0hKcGRtRjBaU0JoYzNObGNuUW9ZMjl1WkdsMGFXOXVPaUJoYm5rc0lHMWxjM05oWjJVNklHRnVlU2tnZTF4dUlDQWdJR2xtSUNnaFkyOXVaR2wwYVc5dUtTQjBhSEp2ZHlCdFpYTnpZV2RsSUh4OElDZEJjM05sY25ScGIyNGdabUZwYkdWa0p6dGNiaUFnZlZ4dVhHNGdJQzh2SUhONWJuUmhlQ0J6ZFdkaGNseHVJQ0J3Y21sMllYUmxJR2RsZEc5d2RDaHZjSFE2SUh0Ylh6b2djM1J5YVc1blhUb2dZVzU1ZlN3Z1ptbGxiR1E2SUhOMGNtbHVaeXdnWkdWbVlYVnNkSFpoYkRvZ1lXNTVLU0I3WEc0Z0lDQWdhV1lnS0c5d2RDNW9ZWE5QZDI1UWNtOXdaWEowZVNobWFXVnNaQ2twWEc0Z0lDQWdJQ0J5WlhSMWNtNGdiM0IwVzJacFpXeGtYVHRjYmlBZ0lDQmxiSE5sWEc0Z0lDQWdJQ0J5WlhSMWNtNGdaR1ZtWVhWc2RIWmhiRHRjYmlBZ2ZWeHVYRzRnSUNBZ0x5OGdjbVYwZFhKdUlEQWdiV1ZoYmlCMWJtbDBJSE4wWVc1a1lYSmtJR1JsZG1saGRHbHZiaUJ5WVc1a2IyMGdiblZ0WW1WeVhHNGdJQ0FnY0hKcGRtRjBaU0J5WlhSMWNtNVdJRDBnWm1Gc2MyVTdYRzRnSUNBZ2NISnBkbUYwWlNCMlZtRnNkV1VnUFNBd0xqQTdYRzRnSUNBZ1oyRjFjM05TWVc1a2IyMG9LVG9nYm5WdFltVnlJSHRjYmlBZ0lDQWdJR2xtSUNoMGFHbHpMbkpsZEhWeWJsWXBJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXlaWFIxY201V0lEMGdabUZzYzJVN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCMGFHbHpMblpXWVd4MVpUdGNiaUFnSUNBZ0lIMWNiaUFnSUNBZ0lHTnZibk4wSUhVZ1BTQXlJQ29nZEdocGN5NXlZVzVrYjIwb0tTQXRJREU3WEc0Z0lDQWdJQ0JqYjI1emRDQjJJRDBnTWlBcUlIUm9hWE11Y21GdVpHOXRLQ2tnTFNBeE8xeHVJQ0FnSUNBZ1kyOXVjM1FnY2lBOUlIVWdLaUIxSUNzZ2RpQXFJSFk3WEc0Z0lDQWdJQ0JwWmlBb2NpQTlQVDBnTUNCOGZDQnlJRDRnTVNrZ2NtVjBkWEp1SUhSb2FYTXVaMkYxYzNOU1lXNWtiMjBvS1R0Y2JpQWdJQ0FnSUdOdmJuTjBJR01nUFNCTllYUm9Mbk54Y25Rb0xUSWdLaUJOWVhSb0xteHZaeWh5S1NBdklISXBPMXh1SUNBZ0lDQWdkR2hwY3k1MlZtRnNkV1VnUFNCMklDb2dZenNnTHk4Z1kyRmphR1VnZEdocGN5Qm1iM0lnYm1WNGRDQm1kVzVqZEdsdmJpQmpZV3hzSUdadmNpQmxabVpwWTJsbGJtTjVYRzRnSUNBZ0lDQjBhR2x6TG5KbGRIVnlibFlnUFNCMGNuVmxPMXh1SUNBZ0lDQWdjbVYwZFhKdUlIVWdLaUJqTzF4dUlDQWdJSDFjYmx4dUlDQWdJQzh2SUhKbGRIVnliaUJ5WVc1a2IyMGdibTl5YldGc0lHNTFiV0psY2x4dUlDQWdJSEJ5YVhaaGRHVWdjbUZ1Wkc0b2JYVTZJRzUxYldKbGNpd2djM1JrT2lCdWRXMWlaWElwSUh0Y2JpQWdJQ0FnSUhKbGRIVnliaUJ0ZFNBcklIUm9hWE11WjJGMWMzTlNZVzVrYjIwb0tTQXFJSE4wWkR0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0F2THlCMWRHbHNhWFJwZEhrZ2RHaGhkQ0JqY21WaGRHVnpJR052Ym5ScFozVnZkWE1nZG1WamRHOXlJRzltSUhwbGNtOXpJRzltSUhOcGVtVWdibHh1SUNBZ0lIQnlhWFpoZEdVZ2VtVnliM01vYmpvZ2JuVnRZbVZ5S1NCN1hHNGdJQ0FnSUNCcFppQW9kSGx3Wlc5bUlDaHVLU0E5UFQwZ0ozVnVaR1ZtYVc1bFpDY2dmSHdnYVhOT1lVNG9iaWtwSUhKbGRIVnliaUJ1WlhjZ1JteHZZWFF6TWtGeWNtRjVLQ2s3WEc0Z0lDQWdJQ0JwWmlBb2RIbHdaVzltSUVGeWNtRjVRblZtWm1WeUlEMDlQU0FuZFc1a1pXWnBibVZrSnlrZ2UxeHVJQ0FnSUNBZ0lDQXZMeUJzWVdOcmFXNW5JR0p5YjNkelpYSWdjM1Z3Y0c5eWRGeHVJQ0FnSUNBZ0lDQmpiMjV6ZENCaGNuSWdQU0J1WlhjZ1JteHZZWFF6TWtGeWNtRjVLRzRwTzF4dUlDQWdJQ0FnSUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHNDdJR2tyS3lrZ1lYSnlXMmxkSUQwZ01EdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlHRnljanRjYmlBZ0lDQWdJSDBnWld4elpTQjdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQnVaWGNnUm14dllYUXpNa0Z5Y21GNUtHNHBPeUF2THlCMGVYQmxaQ0JoY25KaGVYTWdZWEpsSUdaaGMzUmxjbHh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJSFYwYVd4cGRIa2dkR2hoZENCeVpYUjFjbTV6SURKa0lHRnljbUY1SUdacGJHeGxaQ0IzYVhSb0lISmhibVJ2YlNCdWRXMWlaWEp6WEc0Z0lDQWdMeThnYjNJZ2QybDBhQ0IyWVd4MVpTQnpMQ0JwWmlCd2NtOTJhV1JsWkZ4dUlDQWdJSEJ5YVhaaGRHVWdjbUZ1Wkc0eVpDaHVPaUJ1ZFcxaVpYSXNJR1E2SUc1MWJXSmxjaXdnY3o4NklHNTFiV0psY2lrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnZFhObGN5QTlJSFI1Y0dWdlppQnpJQ0U5UFNBbmRXNWtaV1pwYm1Wa0p6dGNiaUFnSUNBZ0lHTnZibk4wSUhnZ1BTQW9ibVYzSUVGeWNtRjVLRzRwS1M1bWFXeHNLRzUxYkd3cExtMWhjQ2dvS1NBOVBpQnVaWGNnUm14dllYUXpNa0Z5Y21GNUtHUXBLVHRjYmlBZ0lDQWdJR2xtSUNoMWMyVnpLU0I3WEc0Z0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2Jqc2dhU3NyS1Z4dUlDQWdJQ0FnSUNBZ0lIaGJhVjBnUFNCdVpYY2dSbXh2WVhRek1rRnljbUY1S0dRcExtWnBiR3dvY3lrN1hHNGdJQ0FnSUNCOUlHVnNjMlVnZTF4dUlDQWdJQ0FnSUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHNDdJR2tyS3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR29nUFNBd095QnFJRHdnWkRzZ2Fpc3JLVnh1SUNBZ0lDQWdJQ0FnSUNBZ2VGdHBYVnRxWFNBOUlIUm9hWE11Y21GdVpHNG9NQzR3TENBeFpTMDBLVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlZ4dUlDQWdJQ0FnY21WMGRYSnVJSGc3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdMeThnWTI5dGNIVjBaU0JNTWlCa2FYTjBZVzVqWlNCaVpYUjNaV1Z1SUhSM2J5QjJaV04wYjNKelhHNGdJQ0FnY0hKcGRtRjBaU0JzTWloNE1Ub2diblZ0WW1WeVcxMHNJSGd5T2lCdWRXMWlaWEpiWFNrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnUkNBOUlIZ3hMbXhsYm1kMGFEdGNiaUFnSUNBZ0lHeGxkQ0JrSUQwZ01EdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dSRHNnYVNzcktTQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElIZ3hhU0E5SUhneFcybGRPMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQjRNbWtnUFNCNE1sdHBYVHRjYmlBZ0lDQWdJQ0FnWkNBclBTQW9lREZwSUMwZ2VESnBLU0FxSUNoNE1Xa2dMU0I0TW1rcE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2NtVjBkWEp1SUdRN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHk4Z1kyOXRjSFYwWlNCd1lXbHlkMmx6WlNCa2FYTjBZVzVqWlNCcGJpQmhiR3dnZG1WamRHOXljeUJwYmlCWVhHNGdJQ0FnY0hKcGRtRjBaU0I0ZEc5a0tGZzZJRUZ5Y21GNVBDQkJjbkpoZVR4dWRXMWlaWEkrSUQ0cElIdGNiaUFnSUNBZ0lHTnZibk4wSUU0Z1BTQllMbXhsYm1kMGFEdGNiaUFnSUNBZ0lHTnZibk4wSUdScGMzUWdQU0IwYUdsekxucGxjbTl6S0U0Z0tpQk9LVHNnTHk4Z1lXeHNiMk5oZEdVZ1kyOXVkR2xuZFc5MWN5QmhjbkpoZVZ4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCT095QnBLeXNwSUh0Y2JpQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2tnS3lBeE95QnFJRHdnVGpzZ2Fpc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWkNBOUlIUm9hWE11YkRJb1dGdHBYU3dnV0Z0cVhTazdYRzRnSUNBZ0lDQWdJQ0FnWkdsemRGdHBJQ29nVGlBcklHcGRJRDBnWkR0Y2JpQWdJQ0FnSUNBZ0lDQmthWE4wVzJvZ0tpQk9JQ3NnYVYwZ1BTQmtPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdJQ0J5WlhSMWNtNGdaR2x6ZER0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0J3ZFdKc2FXTWdaMlYwU1hSbGNsTnBlbVVvY205M1UybDZaVG9nYm5WdFltVnlLU0I3WEc0Z0lDQWdJQ0JwWmlBb2NtOTNVMmw2WlNBOFBTQXlNREF3S1Z4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnTVRBd08xeHVJQ0FnSUNBZ1pXeHpaU0JwWmlBb2NtOTNVMmw2WlNBOFBTQXpNREF3S1Z4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnT1RBN1hHNGdJQ0FnSUNCbGJITmxJR2xtSUNoeWIzZFRhWHBsSUR3OUlEVXdNREFwWEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUE0TUR0Y2JpQWdJQ0FnSUdWc2MyVmNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEY3dPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJR052YlhCMWRHVWdLSEJmZTJsOGFuMGdLeUJ3WDN0cWZHbDlLUzhvTW00cFhHNGdJQ0FnY0hKcGRtRjBaU0JrTW5Bb1JEb2dSbXh2WVhRek1rRnljbUY1TENCd1pYSndiR1Y0YVhSNU9pQnVkVzFpWlhJc0lIUnZiRG9nYm5WdFltVnlMQ0J5YjNkVGFYcGxPaUJ1ZFcxaVpYSXBJSHRjYmlBZ0lDQWdJQzh2SUdOdmJuTjBJRzVtSUQwZ1RXRjBhQzV6Y1hKMEtFUXViR1Z1WjNSb0tUc2dMeThnZEdocGN5QmlaWFIwWlhJZ1ltVWdZVzRnYVc1MFpXZGxjbHh1SUNBZ0lDQWdMeThnWTI5dWMzUWdiaUE5SUUxaGRHZ3VabXh2YjNJb2JtWXBPMXh1SUNBZ0lDQWdMeThnZEdocGN5NWhjM05sY25Rb2JpQTlQVDBnYm1Zc0lDZEVJSE5vYjNWc1pDQm9ZWFpsSUhOeGRXRnlaU0J1ZFcxaVpYSWdiMllnWld4bGJXVnVkSE11SnlrN1hHNGdJQ0FnSUNCamIyNXpkQ0JwYm1SbGVHVnlJRDBnWkcxTWFXNWxZWEpKYm1SbGVDaHliM2RUYVhwbEtUdGNiaUFnSUNBZ0lHTnZibk4wSUdScGMzUmhibU5sY3lBOUlHNWxkeUJHYkc5aGRETXlRWEp5WVhrb2NtOTNVMmw2WlNBcUlISnZkMU5wZW1VcE8xeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnliM2RUYVhwbE95QnBLeXNwSUh0Y2JpQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2tnS3lBeE95QnFJRHdnY205M1UybDZaVHNnYWlzcktWeHVJQ0FnSUNBZ0lDQWdJR1JwYzNSaGJtTmxjMXRwSUNvZ2NtOTNVMmw2WlNBcklHcGRJRDBnWkdsemRHRnVZMlZ6VzJvZ0tpQnliM2RUYVhwbElDc2dhVjBnUFNCRVcybHVaR1Y0WlhJb2FTd2dhaWxkTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJQ0FnWTI5dWMzUWdiaUE5SUhKdmQxTnBlbVU3WEc0Z0lDQWdJQ0JqYjI1emRDQm9WR0Z5WjJWMElEMGdUV0YwYUM1c2IyY29jR1Z5Y0d4bGVHbDBlU2s3SUM4dklIUmhjbWRsZENCbGJuUnliM0I1SUc5bUlHUnBjM1J5YVdKMWRHbHZibHh1SUNBZ0lDQWdZMjl1YzNRZ1VDQTlJSFJvYVhNdWVtVnliM01vYmlBcUlHNHBPeUF2THlCMFpXMXdiM0poY25rZ2NISnZZbUZpYVd4cGRIa2diV0YwY21sNFhHNGdJQ0FnSUNCamIyNXpkQ0J3Y205M0lEMGdkR2hwY3k1NlpYSnZjeWh1S1RzZ0x5OGdZU0IwWlcxd2IzSmhjbmtnYzNSdmNtRm5aU0JqYjIxd1lYSjBiV1Z1ZEZ4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCdU95QnBLeXNwSUh0Y2JpQWdJQ0FnSUNBZ2JHVjBJR0psZEdGdGFXNGdQU0F0U1c1bWFXNXBkSGs3WEc0Z0lDQWdJQ0FnSUd4bGRDQmlaWFJoYldGNElEMGdTVzVtYVc1cGRIazdYRzRnSUNBZ0lDQWdJR3hsZENCaVpYUmhJRDBnTVRzZ0x5OGdhVzVwZEdsaGJDQjJZV3gxWlNCdlppQndjbVZqYVhOcGIyNWNiaUFnSUNBZ0lDQWdiR1YwSUdSdmJtVWdQU0JtWVd4elpUdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ2JXRjRkSEpwWlhNZ1BTQk5ZWFJvTG1ac2IyOXlLSFJvYVhNdVoyVjBTWFJsY2xOcGVtVW9jbTkzVTJsNlpTa2dMeUExS1R0Y2JseHVJQ0FnSUNBZ0lDQXZMeUJ3WlhKbWIzSnRJR0pwYm1GeWVTQnpaV0Z5WTJnZ2RHOGdabWx1WkNCaElITjFhWFJoWW14bElIQnlaV05wYzJsdmJpQmlaWFJoWEc0Z0lDQWdJQ0FnSUM4dklITnZJSFJvWVhRZ2RHaGxJR1Z1ZEhKdmNIa2diMllnZEdobElHUnBjM1J5YVdKMWRHbHZiaUJwY3lCaGNIQnliM0J5YVdGMFpWeHVJQ0FnSUNBZ0lDQnNaWFFnYm5WdElEMGdNRHRjYmlBZ0lDQWdJQ0FnZDJocGJHVWdLQ0ZrYjI1bEtTQjdYRzRnSUNBZ0lDQWdJQ0FnTHk5a1pXSjFaMmRsY2p0Y2JseHVJQ0FnSUNBZ0lDQWdJQzh2SUdOdmJYQjFkR1VnWlc1MGNtOXdlU0JoYm1RZ2EyVnlibVZzSUhKdmR5QjNhWFJvSUdKbGRHRWdjSEpsWTJsemFXOXVYRzRnSUNBZ0lDQWdJQ0FnYkdWMElIQnpkVzBnUFNBd0xqQTdYRzRnSUNBZ0lDQWdJQ0FnWm05eUlDaHNaWFFnYWlBOUlEQTdJR29nUENCdU95QnFLeXNwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElIQnFJRDBnYVNBOVBUMGdhaUEvSURBZ09pQk5ZWFJvTG1WNGNDZ3RJR1JwYzNSaGJtTmxjMXRwSUNvZ2JpQXJJR3BkSUNvZ1ltVjBZU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQndjbTkzVzJwZElEMGdjR283WEc0Z0lDQWdJQ0FnSUNBZ0lDQndjM1Z0SUNzOUlIQnFPMXh1SUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ0lDQXZMeUJ1YjNKdFlXeHBlbVVnY0NCaGJtUWdZMjl0Y0hWMFpTQmxiblJ5YjNCNVhHNGdJQ0FnSUNBZ0lDQWdiR1YwSUc1SVpYSmxJRDBnTUM0d08xeHVJQ0FnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR29nUFNBd095QnFJRHdnYmpzZ2Fpc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNaWFFnY0dvN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2NITjFiU0E5UFQwZ01DbGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2NHb2dQU0F3TzF4dUlDQWdJQ0FnSUNBZ0lDQWdaV3h6WlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J3YWlBOUlIQnliM2RiYWwwZ0x5QndjM1Z0TzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0J3Y205M1cycGRJRDBnY0dvN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb2NHb2dQaUF4WlMwM0tTQnVTR1Z5WlNBdFBTQndhaUFxSUUxaGRHZ3ViRzluS0hCcUtUdGNiaUFnSUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0lDQXZMeUJoWkdwMWMzUWdZbVYwWVNCaVlYTmxaQ0J2YmlCeVpYTjFiSFJjYmlBZ0lDQWdJQ0FnSUNCcFppQW9ia2hsY21VZ1BpQm9WR0Z5WjJWMEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QmxiblJ5YjNCNUlIZGhjeUIwYjI4Z2FHbG5hQ0FvWkdsemRISnBZblYwYVc5dUlIUnZieUJrYVdabWRYTmxLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0x5OGdjMjhnZDJVZ2JtVmxaQ0IwYnlCcGJtTnlaV0Z6WlNCMGFHVWdjSEpsWTJsemFXOXVJR1p2Y2lCdGIzSmxJSEJsWVd0NUlHUnBjM1J5YVdKMWRHbHZibHh1SUNBZ0lDQWdJQ0FnSUNBZ1ltVjBZVzFwYmlBOUlHSmxkR0U3SUM4dklHMXZkbVVnZFhBZ2RHaGxJR0p2ZFc1a2MxeHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHSmxkR0Z0WVhnZ1BUMDlJRWx1Wm1sdWFYUjVLU0JpWlhSaElEMGdZbVYwWVNBcUlESTdJR1ZzYzJVZ1ltVjBZU0E5SUNoaVpYUmhJQ3NnWW1WMFlXMWhlQ2tnTHlBeU8xeHVJQ0FnSUNBZ0lDQWdJSDBnWld4elpTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBdkx5QmpiMjUyWlhKelpTQmpZWE5sTGlCdFlXdGxJR1JwYzNSeWRXSjBhVzl1SUd4bGMzTWdjR1ZoYTNsY2JpQWdJQ0FnSUNBZ0lDQWdJR0psZEdGdFlYZ2dQU0JpWlhSaE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHSmxkR0Z0YVc0Z1BUMDlJQzFKYm1acGJtbDBlU2tnWW1WMFlTQTlJR0psZEdFZ0x5QXlPeUJsYkhObElHSmxkR0VnUFNBb1ltVjBZU0FySUdKbGRHRnRhVzRwSUM4Z01qdGNiaUFnSUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0lDQXZMeUJ6ZEc5d2NHbHVaeUJqYjI1a2FYUnBiMjV6T2lCMGIyOGdiV0Z1ZVNCMGNtbGxjeUJ2Y2lCbmIzUWdZU0JuYjI5a0lIQnlaV05wYzJsdmJseHVJQ0FnSUNBZ0lDQWdJRzUxYlNzck8xeHVJQ0FnSUNBZ0lDQWdJR2xtSUNoTllYUm9MbUZpY3lodVNHVnlaU0F0SUdoVVlYSm5aWFFwSUR3Z2RHOXNLU0JrYjI1bElEMGdkSEoxWlR0Y2JpQWdJQ0FnSUNBZ0lDQnBaaUFvYm5WdElENDlJRzFoZUhSeWFXVnpLU0JrYjI1bElEMGdkSEoxWlR0Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQzh2SUdOdmJuTnZiR1V1Ykc5bktDZGtZWFJoSUhCdmFXNTBJQ2NnS3lCcElDc2dKeUJuWlhSeklIQnlaV05wYzJsdmJpQW5JQ3NnWW1WMFlTQXJJQ2NnWVdaMFpYSWdKeUFySUc1MWJTQXJJQ2NnWW1sdVlYSjVJSE5sWVhKamFDQnpkR1Z3Y3k0bktUdGNiaUFnSUNBZ0lDQWdMeThnWTI5d2VTQnZkbVZ5SUhSb1pTQm1hVzVoYkNCd2NtOTNJSFJ2SUZBZ1lYUWdjbTkzSUdsY2JpQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJREE3SUdvZ1BDQnVPeUJxS3lzcElGQmJhU0FxSUc0Z0t5QnFYU0E5SUhCeWIzZGJhbDA3WEc0Z0lDQWdJQ0I5SUM4dklHVnVaQ0JzYjI5d0lHOTJaWElnWlhoaGJYQnNaWE1nYVZ4dVhHNGdJQ0FnSUNBdkx5QnplVzF0WlhSeWFYcGxJRkFnWVc1a0lHNXZjbTFoYkdsNlpTQnBkQ0IwYnlCemRXMGdkRzhnTVNCdmRtVnlJR0ZzYkNCcGFseHVJQ0FnSUNBZ1kyOXVjM1FnY0U5MWRDQTlJSFJvYVhNdWVtVnliM01vYmlBcUlHNHBPMXh1SUNBZ0lDQWdZMjl1YzNRZ1RqSWdQU0J1SUNvZ01qdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dianNnYVNzcktTQjdYRzRnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR29nUFNBd095QnFJRHdnYmpzZ2Fpc3JLVnh1SUNBZ0lDQWdJQ0FnSUhCUGRYUmJhU0FxSUc0Z0t5QnFYU0E5SUUxaGRHZ3ViV0Y0S0NoUVcya2dLaUJ1SUNzZ2FsMGdLeUJRVzJvZ0tpQnVJQ3NnYVYwcElDOGdUaklzSURGbExURXdNQ2s3WEc0Z0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUhKbGRIVnliaUJ3VDNWME8xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4dklHaGxiSEJsY2lCbWRXNWpkR2x2Ymx4dUlDQWdJSEJ5YVhaaGRHVWdjMmxuYmloNE9pQnVkVzFpWlhJcElIc2djbVYwZFhKdUlIZ2dQaUF3SUQ4Z01TQTZJSGdnUENBd0lEOGdMVEVnT2lBd095QjlYRzVjYmlBZ0lDQmpiMjV6ZEhKMVkzUnZjaWh2Y0hRNklIdGJYem9nYzNSeWFXNW5YVG9nWVc1NWZTa2dlMXh1SUNBZ0lDQWdiM0IwSUQwZ2IzQjBJSHg4SUh0OU8xeHVJQ0FnSUNBZ2RHaHBjeTV3WlhKd2JHVjRhWFI1SUQwZ2RHaHBjeTVuWlhSdmNIUW9iM0IwTENBbmNHVnljR3hsZUdsMGVTY3NJRE13S1RzZ0x5OGdaV1ptWldOMGFYWmxJRzUxYldKbGNpQnZaaUJ1WldGeVpYTjBJRzVsYVdkb1ltOXljMXh1SUNBZ0lDQWdkR2hwY3k1a2FXMGdQU0IwYUdsekxtZGxkRzl3ZENodmNIUXNJQ2RrYVcwbkxDQXlLVHNnTHk4Z1lua2daR1ZtWVhWc2RDQXlMVVFnZEZOT1JWeHVJQ0FnSUNBZ2RHaHBjeTVsY0hOcGJHOXVJRDBnZEdocGN5NW5aWFJ2Y0hRb2IzQjBMQ0FuWlhCemFXeHZiaWNzSURFd0tUc2dMeThnYkdWaGNtNXBibWNnY21GMFpWeHVJQ0FnSUNBZ2RHaHBjeTV5WVc1a2IyMGdQU0IwYUdsekxtZGxkRzl3ZENodmNIUXNJQ2R5WVc1a2IyMG5MQ0JOWVhSb0xuSmhibVJ2YlNrN0lDOHZJSEpoYm1SdmJTQnVkVzFpWlhJZ1oyVnVaWEpoZEc5eVhHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHk4Z2RHaHBjeUJtZFc1amRHbHZiaUIwWVd0bGN5QmhJSE5sZENCdlppQm9hV2RvTFdScGJXVnVjMmx2Ym1Gc0lIQnZhVzUwYzF4dUlDQWdJQzh2SUdGdVpDQmpjbVZoZEdWeklHMWhkSEpwZUNCUUlHWnliMjBnZEdobGJTQjFjMmx1WnlCbllYVnpjMmxoYmlCclpYSnVaV3hjYmlBZ0lDQndkV0pzYVdNZ2FXNXBkRVJoZEdGU1lYY29XRG9nUVhKeVlYazhRWEp5WVhrOFlXNTVQajRwSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJRTRnUFNCWUxteGxibWQwYUR0Y2JpQWdJQ0FnSUdOdmJuTjBJRVFnUFNCWVd6QmRMbXhsYm1kMGFEdGNiaUFnSUNBZ0lIUm9hWE11WVhOelpYSjBLRTRnUGlBd0xDQW5JRmdnYVhNZ1pXMXdkSGsvSUZsdmRTQnRkWE4wSUdoaGRtVWdjMjl0WlNCa1lYUmhJU2NwTzF4dUlDQWdJQ0FnZEdocGN5NWhjM05sY25Rb1JDQStJREFzSUNjZ1dGc3dYU0JwY3lCbGJYQjBlVDhnVjJobGNtVWdhWE1nZEdobElHUmhkR0UvSnlrN1hHNGdJQ0FnSUNCamIyNXpkQ0JrYVhOMGN5QTlJSFJvYVhNdWVIUnZaQ2hZS1RzZ0x5OGdZMjl1ZG1WeWRDQllJSFJ2SUdScGMzUmhibU5sY3lCMWMybHVaeUJuWVhWemMybGhiaUJyWlhKdVpXeGNiaUFnSUNBZ0lIUm9hWE11VUNBOUlIUm9hWE11WkRKd0tHUnBjM1J6TENCMGFHbHpMbkJsY25Cc1pYaHBkSGtzSURGbExUUXNJRVFwT3lBdkx5QmhkSFJoWTJnZ2RHOGdiMkpxWldOMFhHNGdJQ0FnSUNCMGFHbHpMazRnUFNCT095QXZMeUJpWVdOcklIVndJSFJvWlNCemFYcGxJRzltSUhSb1pTQmtZWFJoYzJWMFhHNGdJQ0FnSUNCMGFHbHpMbWx1YVhSVGIyeDFkR2x2YmlncE95QXZMeUJ5WldaeVpYTm9JSFJvYVhOY2JpQWdJQ0I5WEc1Y2JpQWdJQ0F2THlCMGFHbHpJR1oxYm1OMGFXOXVJSFJoYTJWeklHRWdaMmwyWlc0Z1pHbHpkR0Z1WTJVZ2JXRjBjbWw0SUdGdVpDQmpjbVZoZEdWelhHNGdJQ0FnTHk4Z2JXRjBjbWw0SUZBZ1puSnZiU0IwYUdWdExseHVJQ0FnSUM4dklFUWdhWE1nWVhOemRXMWxaQ0IwYnlCaVpTQndjbTkyYVdSbFpDQmhjeUJoSUd4cGMzUWdiMllnYkdsemRITXNJR0Z1WkNCemFHOTFiR1FnWW1VZ2MzbHRiV1YwY21salhHNGdJQ0FnY0hWaWJHbGpJR2x1YVhSRVlYUmhSR2x6ZENoRU9pQkdiRzloZERNeVFYSnlZWGtzSUhKdmQxTnBlbVU2SUc1MWJXSmxjaWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdUaUE5SUVRdWJHVnVaM1JvTzF4dUlDQWdJQ0FnZEdocGN5NWhjM05sY25Rb1RpQStJREFzSUNjZ1dDQnBjeUJsYlhCMGVUOGdXVzkxSUcxMWMzUWdhR0YyWlNCemIyMWxJR1JoZEdFaEp5azdYRzRnSUNBZ0lDQXZMeUJqYjI1MlpYSjBJRVFnZEc4Z1lTQW9abUZ6ZENrZ2RIbHdaV1FnWVhKeVlYa2dkbVZ5YzJsdmJseHVJQ0FnSUNBZ0x5OGdaR2x6ZEhNdVptOXlSV0ZqYUNnb1pDa2dQVDRnWTI5dWMyOXNaUzVzYjJjb1pDa3BPMXh1SUNBZ0lDQWdZMjl1YzI5c1pTNTBhVzFsS0Nka2FYTjBZVzVqWlhNZ2RHOGdiV0YwY21sNEp5azdYRzRnSUNBZ0lDQjBhR2x6TGxBZ1BTQjBhR2x6TG1ReWNDaEVMQ0IwYUdsekxuQmxjbkJzWlhocGRIa3NJREZsTFRRc0lISnZkMU5wZW1VcE8xeHVJQ0FnSUNBZ1kyOXVjMjlzWlM1MGFXMWxSVzVrS0Nka2FYTjBZVzVqWlhNZ2RHOGdiV0YwY21sNEp5azdYRzRnSUNBZ0lDQjBhR2x6TGs0Z1BTQnliM2RUYVhwbE8xeHVJQ0FnSUNBZ2RHaHBjeTVwYm1sMFUyOXNkWFJwYjI0b0tUc2dMeThnY21WbWNtVnphQ0IwYUdselhHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHk4Z0tISmxLV2x1YVhScFlXeHBlbVZ6SUhSb1pTQnpiMngxZEdsdmJpQjBieUJ5WVc1a2IyMWNiaUFnSUNCd2RXSnNhV01nYVc1cGRGTnZiSFYwYVc5dUtDa2dlMXh1SUNBZ0lDQWdMeThnWjJWdVpYSmhkR1VnY21GdVpHOXRJSE52YkhWMGFXOXVJSFJ2SUhRdFUwNUZYRzRnSUNBZ0lDQjBhR2x6TGxrZ1BTQjBhR2x6TG5KaGJtUnVNbVFvZEdocGN5NU9MQ0IwYUdsekxtUnBiU2s3SUM4dklIUm9aU0J6YjJ4MWRHbHZibHh1SUNBZ0lDQWdkR2hwY3k1bllXbHVjeUE5SUhSb2FYTXVjbUZ1Wkc0eVpDaDBhR2x6TGs0c0lIUm9hWE11WkdsdExDQXhMakFwT3lBdkx5QnpkR1Z3SUdkaGFXNXpJSFJ2SUdGalkyVnNaWEpoZEdVZ2NISnZaM0psYzNNZ2FXNGdkVzVqYUdGdVoybHVaeUJrYVhKbFkzUnBiMjV6WEc0Z0lDQWdJQ0IwYUdsekxubHpkR1Z3SUQwZ2RHaHBjeTV5WVc1a2JqSmtLSFJvYVhNdVRpd2dkR2hwY3k1a2FXMHNJREF1TUNrN0lDOHZJRzF2YldWdWRIVnRJR0ZqWTNWdGRXeGhkRzl5WEc0Z0lDQWdJQ0IwYUdsekxtbDBaWElnUFNBd08xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4dklISmxkSFZ5YmlCd2IybHVkR1Z5SUhSdklHTjFjbkpsYm5RZ2MyOXNkWFJwYjI1Y2JpQWdJQ0J3ZFdKc2FXTWdaMlYwVTI5c2RYUnBiMjRvS1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnZEdocGN5NVpPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJSEJsY21admNtMGdZU0J6YVc1bmJHVWdjM1JsY0NCdlppQnZjSFJwYldsNllYUnBiMjRnZEc4Z2FXMXdjbTkyWlNCMGFHVWdaVzFpWldSa2FXNW5YRzRnSUNBZ2NIVmliR2xqSUhOMFpYQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxtbDBaWElnS3owZ01UdGNiaUFnSUNBZ0lHTnZibk4wSUU0Z1BTQjBhR2x6TGs0N1hHNGdJQ0FnSUNCamIyNXpkQ0JqWnlBOUlIUm9hWE11WTI5emRFZHlZV1FvZEdocGN5NVpLVHNnTHk4Z1pYWmhiSFZoZEdVZ1ozSmhaR2xsYm5SY2JpQWdJQ0FnSUdOdmJuTjBJR052YzNRZ1BTQmpaeTVqYjNOME8xeHVJQ0FnSUNBZ1kyOXVjM1FnWjNKaFpDQTlJR05uTG1keVlXUTdYRzVjYmlBZ0lDQWdJQzh2SUhCbGNtWnZjbTBnWjNKaFpHbGxiblFnYzNSbGNGeHVJQ0FnSUNBZ1kyOXVjM1FnZVcxbFlXNGdQU0IwYUdsekxucGxjbTl6S0hSb2FYTXVaR2x0S1R0Y2JpQWdJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z1Rqc2dhU3NyS1NCN1hHNGdJQ0FnSUNBZ0lHWnZjaUFvYkdWMElHUWdQU0F3T3lCa0lEd2dkR2hwY3k1a2FXMDdJR1FyS3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElHZHBaQ0E5SUdkeVlXUmJhVjFiWkYwN1hHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ2MybGtJRDBnZEdocGN5NTVjM1JsY0Z0cFhWdGtYVHRjYmlBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JuWVdsdWFXUWdQU0IwYUdsekxtZGhhVzV6VzJsZFcyUmRPMXh1WEc0Z0lDQWdJQ0FnSUNBZ0x5OGdZMjl0Y0hWMFpTQm5ZV2x1SUhWd1pHRjBaVnh1SUNBZ0lDQWdJQ0FnSUd4bGRDQnVaWGRuWVdsdUlEMGdkR2hwY3k1emFXZHVLR2RwWkNrZ1BUMDlJSFJvYVhNdWMybG5iaWh6YVdRcElEOGdaMkZwYm1sa0lDb2dNQzQ0SURvZ1oyRnBibWxrSUNzZ01DNHlPMXh1SUNBZ0lDQWdJQ0FnSUdsbUlDaHVaWGRuWVdsdUlEd2dNQzR3TVNrZ2JtVjNaMkZwYmlBOUlEQXVNREU3SUM4dklHTnNZVzF3WEc0Z0lDQWdJQ0FnSUNBZ2RHaHBjeTVuWVdsdWMxdHBYVnRrWFNBOUlHNWxkMmRoYVc0N0lDOHZJSE4wYjNKbElHWnZjaUJ1WlhoMElIUjFjbTVjYmx4dUlDQWdJQ0FnSUNBZ0lDOHZJR052YlhCMWRHVWdiVzl0Wlc1MGRXMGdjM1JsY0NCa2FYSmxZM1JwYjI1Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCdGIyMTJZV3dnUFNCMGFHbHpMbWwwWlhJZ1BDQXlOVEFnUHlBd0xqVWdPaUF3TGpnN1hHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ2JtVjNjMmxrSUQwZ2JXOXRkbUZzSUNvZ2MybGtJQzBnZEdocGN5NWxjSE5wYkc5dUlDb2dibVYzWjJGcGJpQXFJR2R5WVdSYmFWMWJaRjA3WEc0Z0lDQWdJQ0FnSUNBZ2RHaHBjeTU1YzNSbGNGdHBYVnRrWFNBOUlHNWxkM05wWkRzZ0x5OGdjbVZ0WlcxaVpYSWdkR2hsSUhOMFpYQWdkMlVnZEc5dmExeHVYRzRnSUNBZ0lDQWdJQ0FnTHk4Z2MzUmxjQ0ZjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMbGxiYVYxYlpGMGdLejBnYm1WM2MybGtPMXh1WEc0Z0lDQWdJQ0FnSUNBZ2VXMWxZVzViWkYwZ0t6MGdkR2hwY3k1WlcybGRXMlJkT3lBdkx5QmhZMk4xYlhWc1lYUmxJRzFsWVc0Z2MyOGdkR2hoZENCM1pTQmpZVzRnWTJWdWRHVnlJR3hoZEdWeVhHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdMeThnY21Wd2NtOXFaV04wSUZrZ2RHOGdZbVVnZW1WeWJ5QnRaV0Z1WEc0Z0lDQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUU0N0lHa3JLeWtnZTF4dUlDQWdJQ0FnSUNCbWIzSWdLR3hsZENCa0lEMGdNRHNnWkNBOElIUm9hWE11WkdsdE95QmtLeXNwWEc0Z0lDQWdJQ0FnSUNBZ2RHaHBjeTVaVzJsZFcyUmRJQzA5SUhsdFpXRnVXMlJkSUM4Z1RqdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdMeTlwWmloMGFHbHpMbWwwWlhJbE1UQXdQVDA5TUNrZ1kyOXVjMjlzWlM1c2IyY29KMmwwWlhJZ0p5QXJJSFJvYVhNdWFYUmxjaUFySUNjc0lHTnZjM1E2SUNjZ0t5QmpiM04wS1R0Y2JpQWdJQ0FnSUhKbGRIVnliaUJqYjNOME95QXZMeUJ5WlhSMWNtNGdZM1Z5Y21WdWRDQmpiM04wWEc0Z0lDQWdmVnh1WEc0Z0lDQWdMeThnWm05eUlHUmxZblZuWjJsdVp6b2daM0poWkdsbGJuUWdZMmhsWTJ0Y2JpQWdJQ0J3ZFdKc2FXTWdaR1ZpZFdkSGNtRmtLQ2tnZTF4dUlDQWdJQ0FnWTI5dWMzUWdUaUE5SUhSb2FYTXVUanRjYmx4dUlDQWdJQ0FnWTI5dWMzUWdZMmNnUFNCMGFHbHpMbU52YzNSSGNtRmtLSFJvYVhNdVdTazdJQzh2SUdWMllXeDFZWFJsSUdkeVlXUnBaVzUwWEc0Z0lDQWdJQ0F2TDJOdmJuTjBJR052YzNRZ1BTQmpaeTVqYjNOME8xeHVJQ0FnSUNBZ1kyOXVjM1FnWjNKaFpDQTlJR05uTG1keVlXUTdYRzVjYmlBZ0lDQWdJR052Ym5OMElHVWdQU0F4WlMwMU8xeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQk9PeUJwS3lzcElIdGNiaUFnSUNBZ0lDQWdabTl5SUNoc1pYUWdaQ0E5SURBN0lHUWdQQ0IwYUdsekxtUnBiVHNnWkNzcktTQjdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdlVzlzWkNBOUlIUm9hWE11V1Z0cFhWdGtYVHRjYmx4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11V1Z0cFhWdGtYU0E5SUhsdmJHUWdLeUJsTzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUdObk1DQTlJSFJvYVhNdVkyOXpkRWR5WVdRb2RHaHBjeTVaS1R0Y2JseHVJQ0FnSUNBZ0lDQWdJSFJvYVhNdVdWdHBYVnRrWFNBOUlIbHZiR1FnTFNCbE8xeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElHTm5NU0E5SUhSb2FYTXVZMjl6ZEVkeVlXUW9kR2hwY3k1WktUdGNibHh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR0Z1WVd4NWRHbGpJRDBnWjNKaFpGdHBYVnRrWFR0Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCdWRXMWxjbWxqWVd3Z1BTQW9ZMmN3TG1OdmMzUWdMU0JqWnpFdVkyOXpkQ2tnTHlBb01pQXFJR1VwTzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk52YkdVdWJHOW5LR2tnS3lBbkxDY2dLeUJrSUNzZ0p6b2daM0poWkdOb1pXTnJJR0Z1WVd4NWRHbGpPaUFuSUNzZ1lXNWhiSGwwYVdNZ0t5QW5JSFp6TGlCdWRXMWxjbWxqWVd3NklDY2dLeUJ1ZFcxbGNtbGpZV3dwTzF4dVhHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1WlcybGRXMlJkSUQwZ2VXOXNaRHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlZ4dUlDQWdJSDFjYmx4dUlDQWdJSEJ5YVhaaGRHVWdjWFZCY25JL09pQkdiRzloZERNeVFYSnlZWGs3WEc0Z0lDQWdMeThnY21WMGRYSnVJR052YzNRZ1lXNWtJR2R5WVdScFpXNTBMQ0JuYVhabGJpQmhiaUJoY25KaGJtZGxiV1Z1ZEZ4dUlDQWdJSEIxWW14cFl5QmpiM04wUjNKaFpDaFpPaUJ1ZFcxaVpYSmJYVnRkS1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0JPSUQwZ2RHaHBjeTVPTzF4dUlDQWdJQ0FnWTI5dWMzUWdaR2x0SUQwZ2RHaHBjeTVrYVcwN0lDOHZJR1JwYlNCdlppQnZkWFJ3ZFhRZ2MzQmhZMlZjYmlBZ0lDQWdJR052Ym5OMElGQWdQU0IwYUdsekxsQTdYRzVjYmlBZ0lDQWdJR052Ym5OMElIQnRkV3dnUFNCMGFHbHpMbWwwWlhJZ1BDQXhNREFnUHlBMElEb2dNVHNnTHk4Z2RISnBZMnNnZEdoaGRDQm9aV3h3Y3lCM2FYUm9JR3h2WTJGc0lHOXdkR2x0WVZ4dVhHNGdJQ0FnSUNBdkx5QmpiMjF3ZFhSbElHTjFjbkpsYm5RZ1VTQmthWE4wY21saWRYUnBiMjRzSUhWdWJtOXliV0ZzYVhwbFpDQm1hWEp6ZEZ4dUlDQWdJQ0FnZEdocGN5NXhkVUZ5Y2lBL1B6MGdkR2hwY3k1NlpYSnZjeWhPSUNvZ1RpazdYRzRnSUNBZ0lDQnNaWFFnY1hOMWJTQTlJREF1TUR0Y2JpQWdJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z1Rqc2dhU3NyS1NCN1hHNGdJQ0FnSUNBZ0lHWnZjaUFvYkdWMElHb2dQU0JwSUNzZ01Uc2dhaUE4SUU0N0lHb3JLeWtnZTF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUdSemRXMGdQU0J1WlhjZ1FYSnlZWGtvWkdsdEtTNXlaV1IxWTJVb0tIQnlaWFlzSUY4c0lHUXBJRDArSUhCeVpYWWdLeUJOWVhSb0xuQnZkeWhaVzJsZFcyUmRJQzBnV1Z0cVhWdGtYU3dnTWlrc0lEQXBPMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJSEYxSUQwZ01TNHdJQzhnS0RFdU1DQXJJR1J6ZFcwcE95QXZMeUJUZEhWa1pXNTBJSFF0WkdsemRISnBZblYwYVc5dVhHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1eGRVRnljbHRwSUNvZ1RpQXJJR3BkSUQwZ2NYVTdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXhkVUZ5Y2x0cUlDb2dUaUFySUdsZElEMGdjWFU3WEc0Z0lDQWdJQ0FnSUNBZ2NYTjFiU0FyUFNBeUlDb2djWFU3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JpQWdJQ0FnSUM4dklHNXZjbTFoYkdsNlpTQlJJR1JwYzNSeWFXSjFkR2x2YmlCMGJ5QnpkVzBnZEc4Z01WeHVJQ0FnSUNBZ0x5OWpiMjV6ZENCT1RpQTlJRTRnS2lCT08xeHVJQ0FnSUNBZ0x5OWpiMjV6ZENCUklEMGdkR2hwY3k1NlpYSnZjeWhPVGlrN1hHNGdJQ0FnSUNCc1pYUWdZMjl6ZENBOUlEQXVNRHRjYmlBZ0lDQWdJR052Ym5OMElHZHlZV1FnUFNCdVpYY2dRWEp5WVhrb1Rpa3VabWxzYkNodWRXeHNLUzV0WVhBb0tDa2dQVDRnS0c1bGR5QkdiRzloZERNeVFYSnlZWGtvWkdsdEtTa3VabWxzYkNnd0xqQXBLVHRjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnVGpzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0FnSUM4dklHTnZibk4wSUdkemRXMGdQU0J1WlhjZ1JteHZZWFF6TWtGeWNtRjVLR1JwYlNrdVptbHNiQ2d3TGpBcE95QXZMeUJwYm1sMElHZHlZV1FnWm05eUlIQnZhVzUwSUdsY2JpQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2tnS3lBeE95QnFJRHdnVGpzZ2Fpc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnVVNBOUlFMWhkR2d1YldGNEtIUm9hWE11Y1hWQmNuSmJhU0FxSUU0Z0t5QnFYU0F2SUhGemRXMHNJREZsTFRFd01DazdYRzRnSUNBZ0lDQWdJQ0FnWTI5emRDQXJQU0FvTFNCUVcya2dLaUJPSUNzZ2FsMGdLaUJOWVhSb0xteHZaeWhSS1NrZ0tpQXlPeUF2THlCaFkyTjFiWFZzWVhSbElHTnZjM1FnS0hSb1pTQnViMjR0WTI5dWMzUmhiblFnY0c5eWRHbHZiaUJoZENCc1pXRnpkQzR1TGlsY2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCd2NtVnRkV3gwSUQwZ05DQXFJQ2h3YlhWc0lDb2dVRnRwSUNvZ1RpQXJJR3BkSUMwZ1VTa2dLaUIwYUdsekxuRjFRWEp5VzJrZ0tpQk9JQ3NnYWwwN1hHNGdJQ0FnSUNBZ0lDQWdMeTlqYjI1emIyeGxMbXh2Wnlod2NtVnRkV3gwTENCUkxDQnBMQ0JxS1R0Y2JpQWdJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQmtJRDBnTURzZ1pDQThJR1JwYlRzZ1pDc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQm5jbUZrVzJsZFcyUmRJQ3M5SUhCeVpXMTFiSFFnS2lBb1dWdHBYVnRrWFNBdElGbGJhbDFiWkYwcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWjNKaFpGdHFYVnRrWFNBclBTQndjbVZ0ZFd4MElDb2dLRmxiYWwxYlpGMGdMU0JaVzJsZFcyUmRLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdMeTluY21Ga1cybGRJRDBnWjNOMWJUdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdjbVYwZFhKdUlIdGpiM04wTENCbmNtRmtmVHRjYmlBZ0lDQjlYRzU5WEc0aVhYMD0iLCIvKiogUHJveHkgZm9yIERpc3RhbmNlTWF0cml4IGNsYXNzLiBBbGxvd3MgdG8gaW5kZXggbWF0cml4IGFzIG1hdHJpeFtpXVtqXVxuICogTm90ZTogbXVjaCBzbG93ZXIgdGhhbiBkaXJlY3QgaW5kZXhpbmcsIGJ1dCBzdGlsbCBtdWNoIGZhc3RlciB0aGFuIHJlY2FsY3VsYXRpbmcgZGlzdGFuY2VzLlxuICogd2lsbCBiZSB1c2VkIGZvciBULVNORSBtYWlubHkuXG4gKiBAcGFyYW0ge0Zsb2F0MzJBcnJheX1jb25kZW5zZWRBcnJheSAtIGFycmF5IG9mIGRpc3RhbmNlcyBiZXR3ZWVuIGFsbCBwYWlycyBvZiBvYmplY3RzXG4gKiBAcGFyYW0ge251bWJlcn1zaXplIC0gbnVtYmVyIG9mIGNvbXBhcmVibGVzIGluIG1hdHJpeFxuICogQHJldHVybiB7RmxvYXQzMkFycmF5fSAtIHByb3h5IGZvciBjb25kZW5zZWRBcnJheVxuKi9cbmV4cG9ydCBmdW5jdGlvbiBkaXN0YW5jZU1hdHJpeFByb3h5KGNvbmRlbnNlZEFycmF5LCBzaXplKSB7XG4gICAgY29uc3QgbGluZWFyRnVuYyA9IGRtTGluZWFySW5kZXgoc2l6ZSk7XG4gICAgZnVuY3Rpb24gbGluZWFySW5kZXgoaSwgaikge1xuICAgICAgICBjb25zdCBpTnVtID0gTnVtYmVyKGkpO1xuICAgICAgICBjb25zdCBqTnVtID0gTnVtYmVyKGopO1xuICAgICAgICByZXR1cm4gbGluZWFyRnVuYyhpTnVtLCBqTnVtKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gaWR4MkhhbmRsZXIoaWR4MSkge1xuICAgICAgICByZXR1cm4gKHtcbiAgICAgICAgICAgIGdldCh0YXJnZXQsIGlkeDIsIF9yZWNlaXZlcikge1xuICAgICAgICAgICAgICAgIGlmIChpZHgxID09PSBpZHgyKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgICAgICBjb25zdCBsaW5lYXJJZHggPSBOdW1iZXIoaWR4MSkgPiBOdW1iZXIoaWR4MikgPyBsaW5lYXJJbmRleChpZHgyLCBpZHgxKSA6IGxpbmVhckluZGV4KGlkeDEsIGlkeDIpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0YXJnZXRbbGluZWFySWR4XTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBpZHgxSGFuZGxlciA9IHtcbiAgICAgICAgZ2V0KHRhcmdldCwgaWR4MSwgX3JlY2VpdmVyKSB7XG4gICAgICAgICAgICBpZiAoaWR4MSA9PT0gJ2xlbmd0aCcpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHNpemU7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFByb3h5KHRhcmdldCwgaWR4MkhhbmRsZXIoaWR4MSkpO1xuICAgICAgICB9LFxuICAgIH07XG4gICAgcmV0dXJuIG5ldyBQcm94eShjb25kZW5zZWRBcnJheSwgaWR4MUhhbmRsZXIpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGRtTGluZWFySW5kZXgoc2l6ZSkge1xuICAgIHJldHVybiAoaSwgaikgPT4gc2l6ZSAqIGkgKyBqIC0gTWF0aC5mbG9vcigoKGkgKyAyKSAqIChpICsgMSkpIC8gMik7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2ljSEp2ZUhrdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUp3Y205NGVTNTBjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZGUVRzN096czdPMFZCVFVVN1FVRkRSaXhOUVVGTkxGVkJRVlVzYlVKQlFXMUNMRU5CUVVNc1kwRkJORUlzUlVGQlJTeEpRVUZaTzBsQlF6VkZMRTFCUVUwc1ZVRkJWU3hIUVVGSExHRkJRV0VzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVTjJReXhUUVVGVExGZEJRVmNzUTBGQlF5eERRVUZyUWl4RlFVRkZMRU5CUVd0Q08xRkJRM3BFTEUxQlFVMHNTVUZCU1N4SFFVRkhMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU4yUWl4TlFVRk5MRWxCUVVrc1IwRkJSeXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEZGtJc1QwRkJUeXhWUVVGVkxFTkJRVU1zU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMGxCUTJoRExFTkJRVU03U1VGRlJDeFRRVUZUTEZkQlFWY3NRMEZCUXl4SlFVRnhRanRSUVVONFF5eFBRVUZQTEVOQlEwdzdXVUZEUlN4SFFVRkhMRU5CUVVNc1RVRkJUU3hGUVVGRkxFbEJRVWtzUlVGQlJTeFRRVUZUTzJkQ1FVTjZRaXhKUVVGSkxFbEJRVWtzUzBGQlN5eEpRVUZKTzI5Q1FVRkZMRTlCUVU4c1EwRkJReXhEUVVGRE8yZENRVU0xUWl4TlFVRk5MRk5CUVZNc1IwRkJSeXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFhRVUZYTEVOQlFVTXNTVUZCU1N4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFhRVUZYTEVOQlFVTXNTVUZCU1N4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8yZENRVU5zUnl4UFFVRlBMRTFCUVUwc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dFpRVU16UWl4RFFVRkRPMU5CUTBZc1EwRkRSaXhEUVVGRE8wbEJRMG9zUTBGQlF6dEpRVU5FTEUxQlFVMHNWMEZCVnl4SFFVRXJRanRSUVVNNVF5eEhRVUZITEVOQlFVTXNUVUZCVFN4RlFVRkZMRWxCUVVrc1JVRkJSU3hUUVVGVE8xbEJRM3BDTEVsQlFVa3NTVUZCU1N4TFFVRkxMRkZCUVZFN1owSkJRVVVzVDBGQlR5eEpRVUZKTEVOQlFVTTdXVUZEYmtNc1QwRkJUeXhKUVVGSkxFdEJRVXNzUTBGQlF5eE5RVUZOTEVWQlFVVXNWMEZCVnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRE9VTXNRMEZCUXp0TFFVTkdMRU5CUVVNN1NVRkZSaXhQUVVGUExFbEJRVWtzUzBGQlN5eERRVUZETEdOQlFXTXNSVUZCUlN4WFFVRlhMRU5CUVVNc1EwRkJRenRCUVVOb1JDeERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRlZMR0ZCUVdFc1EwRkJReXhKUVVGWk8wbEJRM2hETEU5QlFVOHNRMEZCUXl4RFFVRlRMRVZCUVVVc1EwRkJVeXhGUVVGRkxFVkJRVVVzUTBGQlF5eEpRVUZKTEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4wUml4RFFVRkRJaXdpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpWEc1Y2JpOHFLaUJRY205NGVTQm1iM0lnUkdsemRHRnVZMlZOWVhSeWFYZ2dZMnhoYzNNdUlFRnNiRzkzY3lCMGJ5QnBibVJsZUNCdFlYUnlhWGdnWVhNZ2JXRjBjbWw0VzJsZFcycGRYRzRnS2lCT2IzUmxPaUJ0ZFdOb0lITnNiM2RsY2lCMGFHRnVJR1JwY21WamRDQnBibVJsZUdsdVp5d2dZblYwSUhOMGFXeHNJRzExWTJnZ1ptRnpkR1Z5SUhSb1lXNGdjbVZqWVd4amRXeGhkR2x1WnlCa2FYTjBZVzVqWlhNdVhHNGdLaUIzYVd4c0lHSmxJSFZ6WldRZ1ptOXlJRlF0VTA1RklHMWhhVzVzZVM1Y2JpQXFJRUJ3WVhKaGJTQjdSbXh2WVhRek1rRnljbUY1ZldOdmJtUmxibk5sWkVGeWNtRjVJQzBnWVhKeVlYa2diMllnWkdsemRHRnVZMlZ6SUdKbGRIZGxaVzRnWVd4c0lIQmhhWEp6SUc5bUlHOWlhbVZqZEhOY2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZYTnBlbVVnTFNCdWRXMWlaWElnYjJZZ1kyOXRjR0Z5WldKc1pYTWdhVzRnYldGMGNtbDRYRzRnS2lCQWNtVjBkWEp1SUh0R2JHOWhkRE15UVhKeVlYbDlJQzBnY0hKdmVIa2dabTl5SUdOdmJtUmxibk5sWkVGeWNtRjVYRzRxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdScGMzUmhibU5sVFdGMGNtbDRVSEp2ZUhrb1kyOXVaR1Z1YzJWa1FYSnlZWGs2SUVac2IyRjBNekpCY25KaGVTd2djMmw2WlRvZ2JuVnRZbVZ5S1RvZ1JteHZZWFF6TWtGeWNtRjVJSHRjYmlBZ1kyOXVjM1FnYkdsdVpXRnlSblZ1WXlBOUlHUnRUR2x1WldGeVNXNWtaWGdvYzJsNlpTazdYRzRnSUdaMWJtTjBhVzl1SUd4cGJtVmhja2x1WkdWNEtHazZJSE41YldKdmJDQjhJSE4wY21sdVp5d2dham9nYzNsdFltOXNJSHdnYzNSeWFXNW5LU0I3WEc0Z0lDQWdZMjl1YzNRZ2FVNTFiU0E5SUU1MWJXSmxjaWhwS1R0Y2JpQWdJQ0JqYjI1emRDQnFUblZ0SUQwZ1RuVnRZbVZ5S0dvcE8xeHVJQ0FnSUhKbGRIVnliaUJzYVc1bFlYSkdkVzVqS0dsT2RXMHNJR3BPZFcwcE8xeHVJQ0I5WEc1Y2JpQWdablZ1WTNScGIyNGdhV1I0TWtoaGJtUnNaWElvYVdSNE1Ub2djM2x0WW05c0lId2djM1J5YVc1bktUcFFjbTk0ZVVoaGJtUnNaWEk4Um14dllYUXpNa0Z5Y21GNVBpQjdYRzRnSUNBZ2NtVjBkWEp1SUNoY2JpQWdJQ0FnSUh0Y2JpQWdJQ0FnSUNBZ1oyVjBLSFJoY21kbGRDd2dhV1I0TWl3Z1gzSmxZMlZwZG1WeUtTQjdYRzRnSUNBZ0lDQWdJQ0FnYVdZZ0tHbGtlREVnUFQwOUlHbGtlRElwSUhKbGRIVnliaUF3TzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUd4cGJtVmhja2xrZUNBOUlFNTFiV0psY2locFpIZ3hLU0ErSUU1MWJXSmxjaWhwWkhneUtTQS9JR3hwYm1WaGNrbHVaR1Y0S0dsa2VESXNJR2xrZURFcElEb2diR2x1WldGeVNXNWtaWGdvYVdSNE1Td2dhV1I0TWlrN1hHNGdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIUmhjbWRsZEZ0c2FXNWxZWEpKWkhoZE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdmVnh1SUNBZ0lDazdYRzRnSUgxY2JpQWdZMjl1YzNRZ2FXUjRNVWhoYm1Sc1pYSTZJRkJ5YjNoNVNHRnVaR3hsY2p4R2JHOWhkRE15UVhKeVlYaytJRDBnZTF4dUlDQWdJR2RsZENoMFlYSm5aWFFzSUdsa2VERXNJRjl5WldObGFYWmxjaWtnZTF4dUlDQWdJQ0FnYVdZZ0tHbGtlREVnUFQwOUlDZHNaVzVuZEdnbktTQnlaWFIxY200Z2MybDZaVHRjYmlBZ0lDQWdJSEpsZEhWeWJpQnVaWGNnVUhKdmVIa29kR0Z5WjJWMExDQnBaSGd5U0dGdVpHeGxjaWhwWkhneEtTazdYRzRnSUNBZ2ZTeGNiaUFnZlR0Y2JseHVJQ0J5WlhSMWNtNGdibVYzSUZCeWIzaDVLR052Ym1SbGJuTmxaRUZ5Y21GNUxDQnBaSGd4U0dGdVpHeGxjaWs3WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmtiVXhwYm1WaGNrbHVaR1Y0S0hOcGVtVTZJRzUxYldKbGNpazZJQ2hwT2lCdWRXMWlaWElzSUdvNklHNTFiV0psY2lrZ1BUNGdiblZ0WW1WeUlIdGNiaUFnY21WMGRYSnVJQ2hwT2lCdWRXMWlaWElzSUdvNklHNTFiV0psY2lrZ1BUNGdjMmw2WlNBcUlHa2dLeUJxSUMwZ1RXRjBhQzVtYkc5dmNpZ29LR2tnS3lBeUtTQXFJQ2hwSUNzZ01Ta3BJQzhnTWlrN1hHNTlYRzRpWFgwPSIsImltcG9ydCB7IFZlY3RvciB9IGZyb20gJ0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3R5cGUtZGVjbGFyYXRpb25zJztcbmltcG9ydCB7IEF2YWlsYWJsZU1ldHJpY3MsIE1lYXN1cmUsIGlzQml0QXJyYXlNZXRyaWMgfSBmcm9tICcuLi90eXBlZC1tZXRyaWNzJztcbmltcG9ydCB7IERpc3RhbmNlTWF0cml4U2VydmljZSB9IGZyb20gJy4uL2Rpc3RhbmNlLW1hdHJpeCc7XG5pbXBvcnQgeyBVTUFQIH0gZnJvbSAnLi4vdW1hcCc7XG5pbXBvcnQgeyBhc3NlcnQsIHRyYW5zcG9zZU1hdHJpeCB9IGZyb20gJ0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3ZlY3Rvci1vcGVyYXRpb25zJztcbmltcG9ydCB7IFNwYXJzZU1hdHJpeFNlcnZpY2UgfSBmcm9tICcuLi9kaXN0YW5jZS1tYXRyaXgvc3BhcnNlLW1hdHJpeC1zZXJ2aWNlJztcbmltcG9ydCBCaXRBcnJheSBmcm9tICdAZGF0YWdyb2stbGlicmFyaWVzL3V0aWxzL3NyYy9iaXQtYXJyYXknO1xuaW1wb3J0IHNlZWRSYW5kb20gZnJvbSAnc2VlZHJhbmRvbSc7XG4vL2ltcG9ydCB7VFNORX0gZnJvbSAnQGtlY2tlbHQvdHNuZSc7XG5pbXBvcnQgeyBUU05FIH0gZnJvbSAnLi4vdC1zbmUvdC1zbmUnO1xuY2xhc3MgTXVsdGlDb2x1bW5SZWR1Y2VyIHtcbiAgICBkYXRhO1xuICAgIHdlaWdodHM7XG4gICAgYWdncmVnYXRpb25NZXRob2Q7XG4gICAgY29uc3RydWN0b3Iob3B0aW9ucykge1xuICAgICAgICB0aGlzLmRhdGEgPSBvcHRpb25zLmRhdGE7XG4gICAgICAgIHRoaXMud2VpZ2h0cyA9IG9wdGlvbnMud2VpZ2h0cztcbiAgICAgICAgdGhpcy5hZ2dyZWdhdGlvbk1ldGhvZCA9IG9wdGlvbnMuYWdncmVnYXRpb25NZXRob2Q7XG4gICAgfVxufVxuY2xhc3MgVFNORVJlZHVjZXIgZXh0ZW5kcyBNdWx0aUNvbHVtblJlZHVjZXIge1xuICAgIHJlZHVjZXI7XG4gICAgaXRlcmF0aW9ucztcbiAgICBkaXN0YW5jZUZuYW1lcztcbiAgICBkaXN0YW5jZUZucztcbiAgICBkaXN0YW5jZUZuQXJncztcbiAgICBwcm9ncmVzc0Z1bmM7XG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBUU05FUmVkdWNlci5cbiAgICAgKiBAcGFyYW0ge09wdGlvbnN9IG9wdGlvbnMgT3B0aW9ucyB0byBwYXNzIHRvIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICAgKiBAbWVtYmVyb2YgVFNORVJlZHVjZXJcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG4gICAgICAgIHN1cGVyKG9wdGlvbnMpO1xuICAgICAgICBjb25zdCByYW5kb21TZWVkID0gb3B0aW9ucy5yYW5kb21TZWVkID8/IERhdGUoKTtcbiAgICAgICAgY29uc3QgcmFuZG9tRm4gPSBzZWVkUmFuZG9tKHJhbmRvbVNlZWQpO1xuICAgICAgICBvcHRpb25zLnJhbmRvbSA9IHJhbmRvbUZuO1xuICAgICAgICB0aGlzLnJlZHVjZXIgPSBuZXcgVFNORShvcHRpb25zKTtcbiAgICAgICAgdGhpcy5pdGVyYXRpb25zID0gb3B0aW9ucz8uaXRlcmF0aW9ucyA/PyB0aGlzLnJlZHVjZXIuZ2V0SXRlclNpemUodGhpcy5kYXRhWzBdLmxlbmd0aCk7XG4gICAgICAgIHRoaXMuZGlzdGFuY2VGbmFtZXMgPSBvcHRpb25zLmRpc3RhbmNlRm5hbWVzO1xuICAgICAgICB0aGlzLmRpc3RhbmNlRm5zID0gb3B0aW9ucy5kaXN0YW5jZUZucztcbiAgICAgICAgdGhpcy5kaXN0YW5jZUZuQXJncyA9IG9wdGlvbnMuZGlzdGFuY2VGbkFyZ3M7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3NGdW5jID0gb3B0aW9ucy5wcm9ncmVzc0Z1bmM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEVtYmVkcyB0aGUgZGF0YSBnaXZlbiBpbnRvIHRoZSB0d28tZGltZW5zaW9uYWwgc3BhY2UgdXNpbmcgdC1TTkUgbWV0aG9kLlxcXG4gICAgICogQHBhcmFtIHtib29sZWFufSBbcGFyYWxsZWxEaXN0YW5jZVdvcmtlcnNdIFdoZXRoZXIgdG8gdXNlIHBhcmFsbGVsIGRpc3RhbmNlIHdvcmtlcnMuXG4gICAgICogQHJldHVybiB7YW55fSBDYXJ0ZXNpYW4gY29vcmRpbmF0ZSBvZiB0aGlzIGVtYmVkZGluZyBhbmQgZGlzdGFuY2UgbWF0cml4IHdoZXJlIGFwcGxpY2FibGUuXG4gICAgICovXG4gICAgYXN5bmMgdHJhbnNmb3JtKCkge1xuICAgICAgICBpZiAodGhpcy5kYXRhWzBdLmxlbmd0aCA+IDEwMDAwKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYXhpbXVtIG51bWJlciBvZiBzYW1wbGVzIGZvciBULVNORSBpcyAxMDAwMCcpO1xuICAgICAgICBjb25zdCBtYXRyaXhTZXJ2aWNlID0gbmV3IERpc3RhbmNlTWF0cml4U2VydmljZSh0cnVlLCBmYWxzZSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICAvLyBjb25zdCBhZ2dyZWdhdGUgPSBnZXRBZ2dyZWdhdGlvbkZ1bmN0aW9uKHRoaXMuYWdncmVnYXRpb25NZXRob2QsIHRoaXMud2VpZ2h0cyk7XG4gICAgICAgICAgICAvLyBjb25zdCBkaXN0YW5jZXM6IEFycmF5PEZsb2F0MzJBcnJheT4gPSBbXTtcbiAgICAgICAgICAgIC8vIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5kYXRhLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAvLyAgIGNvbnN0IGRpc3QgPSBhd2FpdCBtYXRyaXhTZXJ2aWNlLmNhbGModGhpcy5kYXRhW2ldLCB0aGlzLmRpc3RhbmNlRm5hbWVzW2ldLCBmYWxzZSwgdGhpcy5kaXN0YW5jZUZuQXJnc1tpXSk7XG4gICAgICAgICAgICAvLyAgIGRpc3RhbmNlcy5wdXNoKGRpc3QpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgLy8gY29uc3QgZGlzdGFuY2UgPSBuZXcgRmxvYXQzMkFycmF5KGRpc3RhbmNlc1swXS5sZW5ndGgpLmZpbGwoMCk7XG4gICAgICAgICAgICAvLyBmb3IgKGxldCBpID0gMDsgaSA8IGRpc3RhbmNlc1swXS5sZW5ndGg7ICsraSlcbiAgICAgICAgICAgIC8vICAgZGlzdGFuY2VbaV0gPSBhZ2dyZWdhdGUoZGlzdGFuY2VzLm1hcCgoZCkgPT4gZFtpXSkpO1xuICAgICAgICAgICAgY29uc3QgZGlzdGFuY2UgPSBhd2FpdCBtYXRyaXhTZXJ2aWNlLmNhbGNNdWx0aSh0aGlzLmRhdGEsIHRoaXMuZGlzdGFuY2VGbmFtZXMsIGZhbHNlLCB0aGlzLmRpc3RhbmNlRm5BcmdzLCB0aGlzLndlaWdodHMsIHRoaXMuYWdncmVnYXRpb25NZXRob2QpO1xuICAgICAgICAgICAgbWF0cml4U2VydmljZS50ZXJtaW5hdGUoKTtcbiAgICAgICAgICAgIC8vIGNvbnN0IG1hdHJpeFByb3h5ID0gZGlzdGFuY2VNYXRyaXhQcm94eShkaXN0YW5jZSwgdGhpcy5kYXRhWzBdLmxlbmd0aCk7XG4gICAgICAgICAgICB0aGlzLnJlZHVjZXIuaW5pdERhdGFEaXN0KGRpc3RhbmNlLCB0aGlzLmRhdGFbMF0ubGVuZ3RoKTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5pdGVyYXRpb25zOyArK2kpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZHVjZXIuc3RlcCgpOyAvLyBldmVyeSB0aW1lIHlvdSBjYWxsIHRoaXMsIHNvbHV0aW9uIGdldHMgYmV0dGVyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMucHJvZ3Jlc3NGdW5jKVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2dyZXNzRnVuYyhpLCB0aGlzLml0ZXJhdGlvbnMsIFtdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJlZHVjZXIuZ2V0U29sdXRpb24oKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgbWF0cml4U2VydmljZS50ZXJtaW5hdGUoKTtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5jbGFzcyBVTUFQUmVkdWNlciBleHRlbmRzIE11bHRpQ29sdW1uUmVkdWNlciB7XG4gICAgcmVkdWNlcjtcbiAgICBkaXN0YW5jZUZuYW1lcztcbiAgICBkaXN0YW5jZUZucztcbiAgICB2ZWN0b3JzO1xuICAgIHByb2dyZXNzRnVuYztcbiAgICBkaXN0YW5jZUZuQXJncztcbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIFVNQVBSZWR1Y2VyLlxuICAgICAqIEBwYXJhbSB7T3B0aW9uc30gb3B0aW9ucyBPcHRpb25zIHRvIHBhc3MgdG8gdGhlIGNvbnN0cnVjdG9yLlxuICAgICAqIEBtZW1iZXJvZiBVTUFQUmVkdWNlclxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICAgICAgY29uc3QgcmFuZG9tU2VlZCA9IG9wdGlvbnMucmFuZG9tU2VlZCA/PyBEYXRlKCk7XG4gICAgICAgIGNvbnN0IHJhbmRvbUZuID0gc2VlZFJhbmRvbShyYW5kb21TZWVkKTtcbiAgICAgICAgc3VwZXIob3B0aW9ucyk7XG4gICAgICAgIGFzc2VydCgnZGlzdGFuY2VGbmFtZXMnIGluIG9wdGlvbnMpO1xuICAgICAgICBhc3NlcnQoJ2Rpc3RhbmNlRm5zJyBpbiBvcHRpb25zKTtcbiAgICAgICAgdGhpcy5kaXN0YW5jZUZuQXJncyA9IG9wdGlvbnMuZGlzdGFuY2VGbkFyZ3M7XG4gICAgICAgIHRoaXMuZGlzdGFuY2VGbnMgPSBvcHRpb25zLmRpc3RhbmNlRm5zO1xuICAgICAgICB0aGlzLnByb2dyZXNzRnVuYyA9IG9wdGlvbnMucHJvZ3Jlc3NGdW5jO1xuICAgICAgICB0aGlzLmRpc3RhbmNlRm5hbWVzID0gb3B0aW9ucy5kaXN0YW5jZUZuYW1lcztcbiAgICAgICAgLy9VbWFwIHVzZXMgdmVjdG9yIGluZGV4aW5nLCBzbyB3ZSBuZWVkIHRvIGNyZWF0ZSBhbiBhcnJheSBvZiB2ZWN0b3JzIGFzIGluZGVjZXMuXG4gICAgICAgIHRoaXMudmVjdG9ycyA9IG5ldyBBcnJheSh0aGlzLmRhdGFbMF0ubGVuZ3RoKS5maWxsKDApLm1hcCgoXywgaSkgPT4gaSk7XG4gICAgICAgIGlmICh0aGlzLmRhdGFbMF0ubGVuZ3RoIDw9IChvcHRpb25zLm5OZWlnaGJvcnMgPz8gMTUpKVxuICAgICAgICAgICAgb3B0aW9ucy5uTmVpZ2hib3JzID0gdGhpcy5kYXRhWzBdLmxlbmd0aCAtIDE7XG4gICAgICAgIG9wdGlvbnMucmFuZG9tID0gcmFuZG9tRm47XG4gICAgICAgIHRoaXMucmVkdWNlciA9IG5ldyBVTUFQKG9wdGlvbnMpO1xuICAgICAgICAvLyB0aGlzLnJlZHVjZXIuZGlzdGFuY2VGbiA9IHRoaXMuX2VuY29kZWREaXN0YW5jZS5iaW5kKHRoaXMpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBFbWJlZHMgdGhlIGRhdGEgZ2l2ZW4gaW50byB0aGUgdHdvLWRpbWVuc2lvbmFsIHNwYWNlIHVzaW5nIFVNQVAgbWV0aG9kLlxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gW19wYXJhbGxlbERpc3RhbmNlV29ya2Vyc10gV2hldGhlciB0byB1c2UgcGFyYWxsZWwgZGlzdGFuY2UgbWF0cml4IHdvcmtlcnMuXG4gICAgICogQHJldHVybiB7YW55fSBDYXJ0ZXNpYW4gY29vcmRpbmF0ZSBvZiB0aGlzIGVtYmVkZGluZy5cbiAgICAgKi9cbiAgICBhc3luYyB0cmFuc2Zvcm0oX3BhcmFsbGVsRGlzdGFuY2VXb3JrZXJzKSB7XG4gICAgICAgIGNvbnNvbGUudGltZSgna25uIGdyYXBoJyk7XG4gICAgICAgIGNvbnN0IGtublJlcyA9IGF3YWl0IG5ldyBTcGFyc2VNYXRyaXhTZXJ2aWNlKClcbiAgICAgICAgICAgIC5tdWx0aUNvbHVtbktOTih0aGlzLmRhdGEsIHRoaXMuZGlzdGFuY2VGbmFtZXMsIHRoaXMucmVkdWNlci5uZWlnaGJvcnMsIHRoaXMuZGlzdGFuY2VGbkFyZ3MsIHRoaXMud2VpZ2h0cywgdGhpcy5hZ2dyZWdhdGlvbk1ldGhvZCk7XG4gICAgICAgIGNvbnNvbGUudGltZUVuZCgna25uIGdyYXBoJyk7XG4gICAgICAgIHRoaXMucmVkdWNlci5zZXRQcmVjb21wdXRlZEtOTihrbm5SZXMua25uSW5kZXhlcywga25uUmVzLmtubkRpc3RhbmNlcyk7XG4gICAgICAgIC8vIG5lZWRlZCBzbyB0aGF0IGdhcmJhZ2UgY29sbGVjdG9yIGNhbiBmcmVlIG1lbW9yeSBmcm9tIGRpc3RhbmNlIG1hdHJpeFxuICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgICAgfSwgMzAwKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGVtYmVkZGluZyA9IGF3YWl0IHRoaXMucmVkdWNlci5maXRBc3luYyh0aGlzLnZlY3RvcnMsIChlcG9jKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5wcm9ncmVzc0Z1bmMpXG4gICAgICAgICAgICAgICAgdGhpcy5wcm9ncmVzc0Z1bmMoZXBvYywgdGhpcy5yZWR1Y2VyLmdldE5FcG9jaHMoKSwgdGhpcy5yZWR1Y2VyLmdldEVtYmVkZGluZygpKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGZ1bmN0aW9uIGFycmF5Q2FzdDJDb29yZGluYXRlcyhkYXRhKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IEFycmF5KGRhdGEubGVuZ3RoKS5maWxsKDApLm1hcCgoXywgaSkgPT4gKFZlY3Rvci5mcm9tKGRhdGFbaV0pKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFycmF5Q2FzdDJDb29yZGluYXRlcyhlbWJlZGRpbmcpO1xuICAgIH1cbn1cbmNvbnN0IEF2YWlsYWJsZVJlZHVjZXJzID0ge1xuICAgICdVTUFQJzogVU1BUFJlZHVjZXIsXG4gICAgJ3QtU05FJzogVFNORVJlZHVjZXIsXG59O1xuZXhwb3J0IGNsYXNzIE11bHRpQ29sRGltUmVkdWNlciB7XG4gICAgcmVkdWNlcjtcbiAgICAvKipcbiAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBEaW1lbnNpb25hbGl0eVJlZHVjZXIuXG4gICAqIEBwYXJhbSB7YW55W119IGRhdGEgVmVjdG9ycyB0byBlbWJlZC5cbiAgICogQHBhcmFtIHtLbm93bk1ldGhvZHN9IG1ldGhvZCBFbWJlZGRpbmcgbWV0aG9kIHRvIGJlIGFwcGxpZWRcbiAgICogQHBhcmFtIHtLbm93bk1ldHJpY3N9IG1ldHJpYyBEaXN0YW5jZSBtZXRyaWMgdG8gYmUgY29tcHV0ZWQgYmV0d2VlbiBlYWNoIG9mIHRoZSB2ZWN0b3JzLlxuICAgKiBAcGFyYW0ge09wdGlvbnN9IFtvcHRpb25zXSBPcHRpb25zIHRvIHBhc3MgdG8gdGhlIGltcGxlbWVudGluZyBlbWJlZGRlcnMuXG4gICAqIEBtZW1iZXJvZiBEaW1lbnNpb25hbGl0eVJlZHVjZXJcbiAgICovXG4gICAgY29uc3RydWN0b3IoZGF0YSwgbWV0aG9kLCBtZXRyaWNzLCB3ZWlnaHRzLCBkaXN0YW5jZUFnZ3JlZ2F0aW9uLCBvcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IG1lYXN1cmVzID0gW107XG4gICAgICAgIGZvciAobGV0IGlkeCA9IDA7IGlkeCA8IG1ldHJpY3MubGVuZ3RoOyArK2lkeCkge1xuICAgICAgICAgICAgY29uc3QgbWVhc3VyZSA9IG5ldyBNZWFzdXJlKG1ldHJpY3NbaWR4XSkuZ2V0TWVhc3VyZShvcHRpb25zLmRpc3RhbmNlRm5BcmdzW2lkeF0pO1xuICAgICAgICAgICAgbWVhc3VyZXMucHVzaChtZWFzdXJlKTtcbiAgICAgICAgICAgIGxldCBiaXRBcnJheUxlbmd0aCA9IDIwNDg7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaWR4XS5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgICAgIGlmIChkYXRhW2lkeF1baV0gJiYgZGF0YVtpZHhdW2ldLl9sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgYml0QXJyYXlMZW5ndGggPSBkYXRhW2lkeF1baV0uX2xlbmd0aDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzQml0QXJyYXlNZXRyaWMobWV0cmljc1tpZHhdKSkge1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YVtpZHhdLmxlbmd0aDsgKytpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhW2lkeF1baV0gJiYgZGF0YVtpZHhdW2ldLl9kYXRhKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVtpZHhdW2ldID0gbmV3IEJpdEFycmF5KGRhdGFbaWR4XVtpXS5fZGF0YSwgZGF0YVtpZHhdW2ldLl9sZW5ndGgpO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhW2lkeF1baV0gPSBuZXcgQml0QXJyYXkoYml0QXJyYXlMZW5ndGgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAobWV0aG9kID09ICdVTUFQJykge1xuICAgICAgICAgICAgdGhpcy5yZWR1Y2VyID0gbmV3IFVNQVBSZWR1Y2VyKHtcbiAgICAgICAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICAgICAgICAgIGRpc3RhbmNlRm5hbWVzOiBtZXRyaWNzLFxuICAgICAgICAgICAgICAgIGRpc3RhbmNlRm5zOiBtZWFzdXJlcyxcbiAgICAgICAgICAgICAgICBkaXN0YW5jZUZuQXJnczogb3B0aW9ucy5kaXN0YW5jZUZuQXJncyxcbiAgICAgICAgICAgICAgICB3ZWlnaHRzOiB3ZWlnaHRzLFxuICAgICAgICAgICAgICAgIGFnZ3JlZ2F0aW9uTWV0aG9kOiBkaXN0YW5jZUFnZ3JlZ2F0aW9uLFxuICAgICAgICAgICAgICAgIC4uLm9wdGlvbnNcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKG1ldGhvZCA9PSAndC1TTkUnKSB7XG4gICAgICAgICAgICB0aGlzLnJlZHVjZXIgPSBuZXcgVFNORVJlZHVjZXIoe1xuICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICAgICAgICAgICAgZGlzdGFuY2VGbmFtZXM6IG1ldHJpY3MsXG4gICAgICAgICAgICAgICAgZGlzdGFuY2VGbnM6IG1lYXN1cmVzLFxuICAgICAgICAgICAgICAgIGRpc3RhbmNlRm5BcmdzOiBvcHRpb25zLmRpc3RhbmNlRm5BcmdzLFxuICAgICAgICAgICAgICAgIHdlaWdodHM6IHdlaWdodHMsXG4gICAgICAgICAgICAgICAgYWdncmVnYXRpb25NZXRob2Q6IGRpc3RhbmNlQWdncmVnYXRpb24sXG4gICAgICAgICAgICAgICAgLi4ub3B0aW9uc1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyoqXG4gICAqIEVtYmVkcyB0aGUgZGF0YSBnaXZlbiBpbnRvIHRoZSB0d28tZGltZW5zaW9uYWwgc3BhY2UgdXNpbmcgdGhlIGNob3NlbiBtZXRob2QuXG4gICAqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gdHJhbnNwb3NlIFdoZXRoZXIgdG8gdHJhbnNmb3JtIGNvb3JkaW5hdGVzIHRvIGhhdmUgY29sdW1ucy1maXJzdCBvcmllbnRhdGlvbi5cbiAgICogQHBhcmFtIHtib29sZWFufSBwYXJhbGxlbERpc3RhbmNlV29ya2VycyBXaGV0aGVyIHRvIHVzZSBwYXJhbGxlbCBkaXN0YW5jZSBjb21wdXRhdGlvbi5cbiAgICogQHRocm93cyB7RXJyb3J9IElmIHRoZSBlbWJlZGRpbmcgbWV0aG9kIHdhcyBub3QgZm91bmQuXG4gICAqIEByZXR1cm4ge2FueX0gQ2FydGVzaWFuIGNvb3JkaW5hdGUgb2YgdGhpcyBlbWJlZGRpbmcgYW5kIGRpc3RhbmNlIG1hdHJpeCB3aGVyZSBhcHBsaWNhYmxlLlxuICAgKiBAbWVtYmVyb2YgRGltZW5zaW9uYWxpdHlSZWR1Y2VyXG4gICAqL1xuICAgIGFzeW5jIHRyYW5zZm9ybSh0cmFuc3Bvc2UgPSBmYWxzZSkge1xuICAgICAgICBpZiAodGhpcy5yZWR1Y2VyID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlZHVjZXIgd2FzIG5vdCBkZWZpbmVkLicpO1xuICAgICAgICBsZXQgZW1iZWRkaW5nID0gYXdhaXQgdGhpcy5yZWR1Y2VyLnRyYW5zZm9ybSgpO1xuICAgICAgICBpZiAodHJhbnNwb3NlKVxuICAgICAgICAgICAgZW1iZWRkaW5nID0gdHJhbnNwb3NlTWF0cml4KGVtYmVkZGluZyk7XG4gICAgICAgIHJldHVybiBlbWJlZGRpbmc7XG4gICAgfVxuICAgIC8qKlxuICAgKiBSZXR1cm5zIG1ldHJpY3MgYXZhaWxhYmxlIGJ5IHR5cGUuXG4gICAqXG4gICAqIEBwYXJhbSB7QXZhaWxhYmxlRGF0YVR5cGVzfSB0eXBlTmFtZSB0eXBlIG5hbWVcbiAgICogQHJldHVybiB7c3RyaW5nW119IE1ldHJpYyBuYW1lcyB3aGljaCBleHBlY3RzIHRoZSBnaXZlbiBkYXRhIHR5cGVcbiAgICogQG1lbWJlcm9mIERpbWVuc2lvbmFsaXR5UmVkdWNlclxuICAgKi9cbiAgICBzdGF0aWMgYXZhaWxhYmxlTWV0cmljc0J5VHlwZSh0eXBlTmFtZSkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoQXZhaWxhYmxlTWV0cmljc1t0eXBlTmFtZV0pO1xuICAgIH1cbiAgICAvKipcbiAgICogUmV0dXJucyBkaW1lbnNpb25hbGl0eSByZWR1Y3Rpb24gbWV0aG9kcyBhdmFpbGFibGUuXG4gICAqXG4gICAqIEByZWFkb25seVxuICAgKiBAbWVtYmVyb2YgRGltZW5zaW9uYWxpdHlSZWR1Y2VyXG4gICAqL1xuICAgIHN0YXRpYyBnZXQgYXZhaWxhYmxlTWV0aG9kcygpIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKEF2YWlsYWJsZVJlZHVjZXJzKTtcbiAgICB9XG4gICAgLyoqXG4gICAqIFJldHVybnMgbWV0cmljcyBhdmFpbGFibGUuXG4gICAqXG4gICAqIEByZWFkb25seVxuICAgKiBAbWVtYmVyb2YgRGltZW5zaW9uYWxpdHlSZWR1Y2VyXG4gICAqL1xuICAgIHN0YXRpYyBnZXQgYXZhaWxhYmxlTWV0cmljcygpIHtcbiAgICAgICAgbGV0IGFucyA9IFtdO1xuICAgICAgICBPYmplY3QudmFsdWVzKEF2YWlsYWJsZU1ldHJpY3MpLmZvckVhY2goKG9iaikgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBPYmplY3QudmFsdWVzKG9iaik7XG4gICAgICAgICAgICBhbnMgPSBbLi4uYW5zLCAuLi5hcnJheV07XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gYW5zO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWJYVnNkR2t0WTI5c2RXMXVMV1JwYlMxeVpXUjFZMlZ5TG1weklpd2ljMjkxY21ObFVtOXZkQ0k2SWlJc0luTnZkWEpqWlhNaU9sc2liWFZzZEdrdFkyOXNkVzF1TFdScGJTMXlaV1IxWTJWeUxuUnpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSkJRVUZCTEU5QlFVOHNSVUZCSzBNc1RVRkJUU3hGUVVGVkxFMUJReTlFTEdsRVFVRnBSQ3hEUVVGRE8wRkJRM3BFTEU5QlFVOHNSVUZCY1VJc1owSkJRV2RDTEVWQlFXZENMRTlCUVU4c1JVRkJSU3huUWtGQlowSXNSVUZCUXl4TlFVRk5MR3RDUVVGclFpeERRVUZETzBGQlF5OUhMRTlCUVU4c1JVRkJReXh4UWtGQmNVSXNSVUZCUXl4TlFVRk5MRzlDUVVGdlFpeERRVUZETzBGQlJYcEVMRTlCUVU4c1JVRkJReXhKUVVGSkxFVkJRVU1zVFVGQlRTeFRRVUZUTEVOQlFVTTdRVUZETjBJc1QwRkJUeXhGUVVGRExFMUJRVTBzUlVGQlJTeGxRVUZsTEVWQlFVTXNUVUZCVFN4cFJFRkJhVVFzUTBGQlF6dEJRVU40Uml4UFFVRlBMRVZCUVVNc2JVSkJRVzFDTEVWQlFVTXNUVUZCVFN3d1EwRkJNRU1zUTBGQlF6dEJRVVUzUlN4UFFVRlBMRkZCUVZFc1RVRkJUU3g1UTBGQmVVTXNRMEZCUXp0QlFVTXZSQ3hQUVVGUExGVkJRVlVzVFVGQlRTeFpRVUZaTEVOQlFVTTdRVUZEY0VNc2NVTkJRWEZETzBGQlEzSkRMRTlCUVU4c1JVRkJReXhKUVVGSkxFVkJRVU1zVFVGQlRTeG5Ra0ZCWjBJc1EwRkJRenRCUVRoQ2NFTXNUVUZCWlN4clFrRkJhMEk3U1VGRGJrSXNTVUZCU1N4RFFVRlpPMGxCUTJoQ0xFOUJRVThzUTBGQlZ6dEpRVU5zUWl4cFFrRkJhVUlzUTBGQk5FSTdTVUZEZGtRc1dVRkJXU3hQUVVGblFqdFJRVU14UWl4SlFVRkpMRU5CUVVNc1NVRkJTU3hIUVVGSExFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTTdVVUZEZWtJc1NVRkJTU3hEUVVGRExFOUJRVThzUjBGQlJ5eFBRVUZQTEVOQlFVTXNUMEZCVHl4RFFVRkRPMUZCUXk5Q0xFbEJRVWtzUTBGQlF5eHBRa0ZCYVVJc1IwRkJSeXhQUVVGUExFTkJRVU1zYVVKQlFXbENMRU5CUVVNN1NVRkRja1FzUTBGQlF6dERRVXRLTzBGQlJVUXNUVUZCVFN4WFFVRlpMRk5CUVZFc2EwSkJRV3RDTzBsQlF6bENMRTlCUVU4c1EwRkJUenRKUVVOa0xGVkJRVlVzUTBGQlV6dEpRVU51UWl4alFVRmpMRU5CUVdsQ08wbEJReTlDTEZkQlFWY3NRMEZCYVVNN1NVRkROVU1zWTBGQll5eERRVUYxUWp0SlFVTnlReXhaUVVGWkxFTkJRWGxGTzBsQlF5OUdPenM3TzA5QlNVYzdTVUZEU0N4WlFVRlpMRTlCUVdkQ08xRkJRekZDTEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRSUVVObUxFMUJRVTBzVlVGQlZTeEhRVUZYTEU5QlFVOHNRMEZCUXl4VlFVRlZMRWxCUVVrc1NVRkJTU3hGUVVGRkxFTkJRVU03VVVGRGVFUXNUVUZCVFN4UlFVRlJMRWRCUVVjc1ZVRkJWU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETzFGQlEzaERMRTlCUVU4c1EwRkJReXhOUVVGTkxFZEJRVWNzVVVGQlVTeERRVUZETzFGQlF6RkNMRWxCUVVrc1EwRkJReXhQUVVGUExFZEJRVWNzU1VGQlNTeEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1VVRkRha01zU1VGQlNTeERRVUZETEZWQlFWVXNSMEZCUnl4UFFVRlBMRVZCUVVVc1ZVRkJWU3hKUVVGSkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNWMEZCVnl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1VVRkRka1lzU1VGQlNTeERRVUZETEdOQlFXTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1kwRkJZeXhEUVVGRE8xRkJRemRETEVsQlFVa3NRMEZCUXl4WFFVRlhMRWRCUVVjc1QwRkJUeXhEUVVGRExGZEJRVmNzUTBGQlF6dFJRVU4yUXl4SlFVRkpMRU5CUVVNc1kwRkJZeXhIUVVGSExFOUJRVThzUTBGQlF5eGpRVUZqTEVOQlFVTTdVVUZETjBNc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eFBRVUZQTEVOQlFVTXNXVUZCV1N4RFFVRkRPMGxCUXpORExFTkJRVU03U1VGRlJEczdPenRQUVVsSE8wbEJRMGtzUzBGQlN5eERRVUZETEZOQlFWTTdVVUZEY0VJc1NVRkJTU3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1IwRkJSeXhMUVVGTE8xbEJRemRDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc09FTkJRVGhETEVOQlFVTXNRMEZCUXp0UlFVTnNSU3hOUVVGTkxHRkJRV0VzUjBGQlJ5eEpRVUZKTEhGQ1FVRnhRaXhEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVTTNSQ3hKUVVGSk8xbEJRMFlzYTBaQlFXdEdPMWxCUTJ4R0xEWkRRVUUyUXp0WlFVTTNReXdyUTBGQkswTTdXVUZETDBNc1owaEJRV2RJTzFsQlEyaElMREJDUVVFd1FqdFpRVU14UWl4SlFVRkpPMWxCUTBvc2EwVkJRV3RGTzFsQlEyeEZMR2RFUVVGblJEdFpRVU5vUkN4NVJFRkJlVVE3V1VGRGVrUXNUVUZCVFN4UlFVRlJMRWRCUVVjc1RVRkJUU3hoUVVGaExFTkJRVU1zVTBGQlV5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExHTkJRV01zUlVGQlJTeExRVUZMTEVWQlFVVXNTVUZCU1N4RFFVRkRMR05CUVdNc1JVRkRka2NzU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4SlFVRkpMRU5CUVVNc2FVSkJRV2xDTEVOQlFVTXNRMEZCUXp0WlFVTjRReXhoUVVGaExFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTTdXVUZETVVJc01FVkJRVEJGTzFsQlF6RkZMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zV1VGQldTeERRVUZETEZGQlFWRXNSVUZCUlN4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMWxCUlhwRUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RlFVRkZPMmRDUVVONFF5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRExFTkJRVU1zYVVSQlFXbEVPMmRDUVVOMFJTeEpRVUZKTEVsQlFVa3NRMEZCUXl4WlFVRlpPMjlDUVVOdVFpeEpRVUZKTEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRPMkZCUXpkRE8xbEJRMFFzVDBGQlR5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRmRCUVZjc1JVRkJSU3hEUVVGRE8xTkJRMjVETzFGQlFVTXNUMEZCVHl4RFFVRkRMRVZCUVVVN1dVRkRWaXhoUVVGaExFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTTdXVUZETVVJc1RVRkJUU3hEUVVGRExFTkJRVU03VTBGRFZEdEpRVU5JTEVOQlFVTTdRMEZEU2p0QlFVVkVMRTFCUVUwc1YwRkJXU3hUUVVGUkxHdENRVUZyUWp0SlFVTTVRaXhQUVVGUExFTkJRVTg3U1VGRFpDeGpRVUZqTEVOQlFXbENPMGxCUXk5Q0xGZEJRVmNzUTBGQllUdEpRVU40UWl4UFFVRlBMRU5CUVZjN1NVRkRiRUlzV1VGQldTeERRVUYxUlR0SlFVTnVSaXhqUVVGakxFTkJRWFZDTzBsQlF5OURPenM3TzA5QlNVYzdTVUZEU0N4WlFVRlpMRTlCUVdkQ08xRkJRekZDTEUxQlFVMHNWVUZCVlN4SFFVRlhMRTlCUVU4c1EwRkJReXhWUVVGVkxFbEJRVWtzU1VGQlNTeEZRVUZGTEVOQlFVTTdVVUZEZUVRc1RVRkJUU3hSUVVGUkxFZEJRVWNzVlVGQlZTeERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRPMUZCUTNoRExFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVTm1MRTFCUVUwc1EwRkJReXhuUWtGQlowSXNTVUZCU1N4UFFVRlBMRU5CUVVNc1EwRkJRenRSUVVOd1F5eE5RVUZOTEVOQlFVTXNZVUZCWVN4SlFVRkpMRTlCUVU4c1EwRkJReXhEUVVGRE8xRkJRMnBETEVsQlFVa3NRMEZCUXl4alFVRmpMRWRCUVVjc1QwRkJUeXhEUVVGRExHTkJRV01zUTBGQlF6dFJRVU0zUXl4SlFVRkpMRU5CUVVNc1YwRkJWeXhIUVVGSExFOUJRVThzUTBGQlF5eFhRVUZaTEVOQlFVTTdVVUZEZUVNc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eFBRVUZQTEVOQlFVTXNXVUZCV1N4RFFVRkRPMUZCUlhwRExFbEJRVWtzUTBGQlF5eGpRVUZqTEVkQlFVY3NUMEZCVHl4RFFVRkRMR05CUVdVc1EwRkJRenRSUVVNNVF5eHBSa0ZCYVVZN1VVRkRha1lzU1VGQlNTeERRVUZETEU5QlFVOHNSMEZCUnl4SlFVRkpMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVWMlJTeEpRVUZKTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRlZCUVZVc1NVRkJTU3hGUVVGRkxFTkJRVU03V1VGRGJrUXNUMEZCVHl4RFFVRkRMRlZCUVZVc1IwRkJSeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGREwwTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1IwRkJSeXhSUVVGUkxFTkJRVU03VVVGRE1VSXNTVUZCU1N4RFFVRkRMRTlCUVU4c1IwRkJSeXhKUVVGSkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVTnFReXc0UkVGQk9FUTdTVUZEYUVVc1EwRkJRenRKUVVWRU96czdPMDlCU1VjN1NVRkRTU3hMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEhkQ1FVRnJRenRSUVVOMlJDeFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRmRCUVZjc1EwRkJReXhEUVVGRE8xRkJRekZDTEUxQlFVMHNUVUZCVFN4SFFVRkhMRTFCUVUwc1NVRkJTU3h0UWtGQmJVSXNSVUZCUlR0aFFVTXpReXhqUVVGakxFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRU5CUVVNc1kwRkJZeXhGUVVGRkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNVMEZCVXl4RlFVTndSU3hKUVVGSkxFTkJRVU1zWTBGQll5eEZRVUZGTEVsQlFVa3NRMEZCUXl4UFFVRlBMRVZCUVVVc1NVRkJTU3hEUVVGRExHbENRVUZwUWl4RFFVRkRMRU5CUVVNN1VVRkRMMFFzVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4WFFVRlhMRU5CUVVNc1EwRkJRenRSUVVNM1FpeEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMR2xDUVVGcFFpeERRVUZETEUxQlFVMHNRMEZCUXl4VlFVRlZMRVZCUVVVc1RVRkJUU3hEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzFGQlJYWkZMSGRGUVVGM1JUdFJRVU40UlN4TlFVRk5MRWxCUVVrc1QwRkJUeXhEUVVGUExFTkJRVU1zVDBGQlR5eEZRVUZGTEVWQlFVVTdXVUZEYkVNc1ZVRkJWU3hEUVVGRExFZEJRVWNzUlVGQlJUdG5Ra0ZEWkN4UFFVRlBMRVZCUVVVc1EwRkJRenRaUVVOYUxFTkJRVU1zUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTldMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJSVWdzVFVGQlRTeFRRVUZUTEVkQlFVY3NUVUZCVFN4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExGRkJRVkVzUTBGQlF5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNc1NVRkJTU3hGUVVGRkxFVkJRVVU3V1VGRGJrVXNTVUZCU1N4SlFVRkpMRU5CUVVNc1dVRkJXVHRuUWtGRGJrSXNTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJReXhKUVVGSkxFVkJRVVVzU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4VlFVRlZMRVZCUVVVc1JVRkJSU3hKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRMRU5CUVVNN1VVRkRjRVlzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZGU0N4VFFVRlRMSEZDUVVGeFFpeERRVUZETEVsQlFXZENPMWxCUXpkRExFOUJRVThzU1VGQlNTeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRemxGTEVOQlFVTTdVVUZGUkN4UFFVRlBMSEZDUVVGeFFpeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRPMGxCUXpGRExFTkJRVU03UTBGRFNqdEJRVVZFTEUxQlFVMHNhVUpCUVdsQ0xFZEJRVWM3U1VGRGVFSXNUVUZCVFN4RlFVRkZMRmRCUVZjN1NVRkRia0lzVDBGQlR5eEZRVUZGTEZkQlFWYzdRMEZEY2tJc1EwRkJRenRCUVVsR0xFMUJRVTBzVDBGQlR5eHJRa0ZCYTBJN1NVRkRia0lzVDBGQlR5eERRVUZwUXp0SlFVTm9SRHM3T3pzN096dExRVTlETzBsQlEwUXNXVUZCV1N4SlFVRnJRaXhGUVVGRkxFMUJRVEpDTEVWQlFVVXNUMEZCZFVJc1JVRkRiRVlzVDBGQmFVSXNSVUZCUlN4dFFrRkJPRU1zUlVGQlJTeFBRVUZuUWp0UlFVTnVSaXhOUVVGTkxGRkJRVkVzUjBGQmNVSXNSVUZCUlN4RFFVRkRPMUZCUTNSRExFdEJRVXNzU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXl4RlFVRkZMRWRCUVVjc1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeEZRVUZGTEVWQlFVVXNSMEZCUnl4RlFVRkZPMWxCUXpkRExFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NUMEZCVHl4RFFVRkRMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEZWQlFWVXNRMEZCUXl4UFFVRlBMRU5CUVVNc1kwRkJZeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdXVUZEYkVZc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0WlFVTjJRaXhKUVVGSkxHTkJRV01zUjBGQlJ5eEpRVUZKTEVOQlFVTTdXVUZETVVJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1owSkJRM3BETEVsQlFVa3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFBRVUZQTEVWQlFVVTdiMEpCUTNoRExHTkJRV01zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETzI5Q1FVTjBReXhOUVVGTk8ybENRVU5RTzJGQlEwWTdXVUZEUkN4SlFVRkpMR2RDUVVGblFpeERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhGUVVGRk8yZENRVU5zUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0dlFrRkRla01zU1VGQlNTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFdEJRVXM3ZDBKQlEzQkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6czdkMEpCUlhSRkxFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhKUVVGSkxGRkJRVkVzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZCUXp0cFFrRkRMME03WVVGRFJqdFRRVU5HTzFGQlJVUXNTVUZCU1N4TlFVRk5MRWxCUVVrc1RVRkJUU3hGUVVGRk8xbEJRM0JDTEVsQlFVa3NRMEZCUXl4UFFVRlBMRWRCUVVjc1NVRkJTU3hYUVVGWExFTkJRVU03WjBKQlF6ZENMRWxCUVVrc1JVRkJSU3hKUVVGSk8yZENRVU5XTEdOQlFXTXNSVUZCUlN4UFFVRlBPMmRDUVVOMlFpeFhRVUZYTEVWQlFVVXNVVUZCVVR0blFrRkRja0lzWTBGQll5eEZRVUZGTEU5QlFVOHNRMEZCUXl4alFVRmpPMmRDUVVOMFF5eFBRVUZQTEVWQlFVVXNUMEZCVHp0blFrRkRhRUlzYVVKQlFXbENMRVZCUVVVc2JVSkJRVzFDTzJkQ1FVTjBReXhIUVVGSExFOUJRVTg3WVVGRFdDeERRVUZETEVOQlFVTTdVMEZEU2p0aFFVRk5MRWxCUVVrc1RVRkJUU3hKUVVGSkxFOUJRVThzUlVGQlJUdFpRVU0xUWl4SlFVRkpMRU5CUVVNc1QwRkJUeXhIUVVGSExFbEJRVWtzVjBGQlZ5eERRVUZETzJkQ1FVTTNRaXhKUVVGSkxFVkJRVVVzU1VGQlNUdG5Ra0ZEVml4alFVRmpMRVZCUVVVc1QwRkJUenRuUWtGRGRrSXNWMEZCVnl4RlFVRkZMRkZCUVZFN1owSkJRM0pDTEdOQlFXTXNSVUZCUlN4UFFVRlBMRU5CUVVNc1kwRkJZenRuUWtGRGRFTXNUMEZCVHl4RlFVRkZMRTlCUVU4N1owSkJRMmhDTEdsQ1FVRnBRaXhGUVVGRkxHMUNRVUZ0UWp0blFrRkRkRU1zUjBGQlJ5eFBRVUZQTzJGQlExZ3NRMEZCUXl4RFFVRkRPMU5CUTBvN1NVRkRTQ3hEUVVGRE8wbEJSVVE3T3pzN096czdPMHRCVVVNN1NVRkRUU3hMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEZsQlFYRkNMRXRCUVVzN1VVRkRMME1zU1VGQlNTeEpRVUZKTEVOQlFVTXNUMEZCVHl4TFFVRkxMRk5CUVZNN1dVRkROVUlzVFVGQlRTeEpRVUZKTEV0QlFVc3NRMEZCUXl3d1FrRkJNRUlzUTBGQlF5eERRVUZETzFGQlJUbERMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4VFFVRlRMRVZCUVVVc1EwRkJRenRSUVVVdlF5eEpRVUZKTEZOQlFWTTdXVUZEV0N4VFFVRlRMRWRCUVVjc1pVRkJaU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzFGQlJYcERMRTlCUVU4c1UwRkJVeXhEUVVGRE8wbEJRMjVDTEVOQlFVTTdTVUZGUkRzN096czdPMHRCVFVNN1NVRkRSQ3hOUVVGTkxFTkJRVU1zYzBKQlFYTkNMRU5CUVVNc1VVRkJORUk3VVVGRGVFUXNUMEZCVHl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExHZENRVUZuUWl4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGFrUXNRMEZCUXp0SlFVVkVPenM3T3p0TFFVdERPMGxCUTBRc1RVRkJUU3hMUVVGTExHZENRVUZuUWp0UlFVTjZRaXhQUVVGUExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNhVUpCUVdsQ0xFTkJRVU1zUTBGQlF6dEpRVU40UXl4RFFVRkRPMGxCUlVRN096czdPMHRCUzBNN1NVRkRSQ3hOUVVGTkxFdEJRVXNzWjBKQlFXZENPMUZCUTNwQ0xFbEJRVWtzUjBGQlJ5eEhRVUZoTEVWQlFVVXNRMEZCUXp0UlFVTjJRaXhOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETEdkQ1FVRm5RaXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNSMEZCUnl4RlFVRkZMRVZCUVVVN1dVRkRPVU1zVFVGQlRTeExRVUZMTEVkQlFVY3NUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU5xUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFZEJRVWNzUlVGQlJTeEhRVUZITEV0QlFVc3NRMEZCUXl4RFFVRkRPMUZCUXpOQ0xFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEwZ3NUMEZCVHl4SFFVRkhMRU5CUVVNN1NVRkRZaXhEUVVGRE8wTkJRMG9pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKcGJYQnZjblFnZTBOdmIzSmthVzVoZEdWekxDQkVhWE4wWVc1alpVMWxkSEpwWXl3Z1RXRjBjbWw0TENCUGNIUnBiMjV6TENCV1pXTjBiM0lzSUZabFkzUnZjbk45WEc0Z0lHWnliMjBnSjBCa1lYUmhaM0p2YXkxc2FXSnlZWEpwWlhNdmRYUnBiSE12YzNKakwzUjVjR1V0WkdWamJHRnlZWFJwYjI1ekp6dGNibWx0Y0c5eWRDQjdRWFpoYVd4aFlteGxSR0YwWVZSNWNHVnpMQ0JCZG1GcGJHRmliR1ZOWlhSeWFXTnpMQ0JMYm05M2JrMWxkSEpwWTNNc0lFMWxZWE4xY21Vc0lHbHpRbWwwUVhKeVlYbE5aWFJ5YVdOOUlHWnliMjBnSnk0dUwzUjVjR1ZrTFcxbGRISnBZM01uTzF4dWFXMXdiM0owSUh0RWFYTjBZVzVqWlUxaGRISnBlRk5sY25acFkyVjlJR1p5YjIwZ0p5NHVMMlJwYzNSaGJtTmxMVzFoZEhKcGVDYzdYRzVwYlhCdmNuUWdlMFJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUjlJR1p5YjIwZ0p5NHVMMlJwYzNSaGJtTmxMVzFoZEhKcGVDOTBlWEJsY3ljN1hHNXBiWEJ2Y25RZ2UxVk5RVkI5SUdaeWIyMGdKeTR1TDNWdFlYQW5PMXh1YVcxd2IzSjBJSHRoYzNObGNuUXNJSFJ5WVc1emNHOXpaVTFoZEhKcGVIMGdabkp2YlNBblFHUmhkR0ZuY205ckxXeHBZbkpoY21sbGN5OTFkR2xzY3k5emNtTXZkbVZqZEc5eUxXOXdaWEpoZEdsdmJuTW5PMXh1YVcxd2IzSjBJSHRUY0dGeWMyVk5ZWFJ5YVhoVFpYSjJhV05sZlNCbWNtOXRJQ2N1TGk5a2FYTjBZVzVqWlMxdFlYUnlhWGd2YzNCaGNuTmxMVzFoZEhKcGVDMXpaWEoyYVdObEp6dGNibWx0Y0c5eWRDQjdSR2x0VW1Wa2RXTjBhVzl1VFdWMGFHOWtjMzBnWm5KdmJTQW5MaTkwZVhCbGN5YzdYRzVwYlhCdmNuUWdRbWwwUVhKeVlYa2dabkp2YlNBblFHUmhkR0ZuY205ckxXeHBZbkpoY21sbGN5OTFkR2xzY3k5emNtTXZZbWwwTFdGeWNtRjVKenRjYm1sdGNHOXlkQ0J6WldWa1VtRnVaRzl0SUdaeWIyMGdKM05sWldSeVlXNWtiMjBuTzF4dUx5OXBiWEJ2Y25RZ2UxUlRUa1Y5SUdaeWIyMGdKMEJyWldOclpXeDBMM1J6Ym1Vbk8xeHVhVzF3YjNKMElIdFVVMDVGZlNCbWNtOXRJQ2N1TGk5MExYTnVaUzkwTFhOdVpTYzdYRzVjYm1WNGNHOXlkQ0JwYm5SbGNtWmhZMlVnU1ZWTlFWQlBjSFJwYjI1eklIdGNiaUFnSUNCc1pXRnlibWx1WjFKaGRHVS9PaUJ1ZFcxaVpYSTdYRzRnSUNBZ2JrTnZiWEJ2Ym1WdWRITS9PaUJ1ZFcxaVpYSTdYRzRnSUNBZ2JrVndiMk5vY3o4NklHNTFiV0psY2p0Y2JpQWdJQ0J1VG1WcFoyaGliM0p6UHpvZ2JuVnRZbVZ5TzF4dUlDQWdJSE53Y21WaFpEODZJRzUxYldKbGNqdGNiaUFnSUNCdGFXNUVhWE4wUHpvZ2JuVnRZbVZ5TzF4dUlDQWdJSEJ5YjJkeVpYTnpSblZ1WXo4NklDaGxjRzlqT2lCdWRXMWlaWElzSUdWd2IyTm9jMHhsYm1kMGFEb2diblZ0WW1WeUxDQmxiV0psWkdScGJtZHpPaUJ1ZFcxaVpYSmJYVnRkS1NBOVBpQjJiMmxrTzF4dUlDQWdJSEpoYm1SdmJWTmxaV1EvT2lCemRISnBibWM3WEc1OVhHNWNibVY0Y0c5eWRDQnBiblJsY21aaFkyVWdTVlJUVGtWUGNIUnBiMjV6SUh0Y2JpQWdJQ0JsY0hOcGJHOXVQem9nYm5WdFltVnlPMXh1SUNBZ0lIQmxjbkJzWlhocGRIay9PaUJ1ZFcxaVpYSTdYRzRnSUNBZ1pHbHRQem9nYm5WdFltVnlPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElFbEVhVzFTWldSMVkzUnBiMjVRWVhKaGJUeFVJR1Y0ZEdWdVpITWdiblZ0WW1WeUlId2djM1J5YVc1bklEMGdiblZ0WW1WeVBpQjdYRzRnSUNBZ2RXbE9ZVzFsT2lCemRISnBibWM3WEc0Z0lDQWdkbUZzZFdVNklDaFVJR1Y0ZEdWdVpITWdiblZ0WW1WeUlEOGdiblZ0WW1WeUlEb2djM1J5YVc1bktTQjhJRzUxYkd3N1hHNGdJQ0FnZEc5dmJIUnBjRG9nYzNSeWFXNW5PMXh1SUNBZ0lIUjVjR1UvT2lCVUlHVjRkR1Z1WkhNZ2JuVnRZbVZ5SUQ4Z0oyNTFiV0psY2ljZ09pQW5jM1J5YVc1bkp6dGNiaUFnSUNCd2JHRmpaV2h2YkdSbGNqODZJSE4wY21sdVp6dGNiaUFnSUNCdGFXNC9PaUJ1ZFcxaVpYSTdYRzRnSUNBZ2JXRjRQem9nYm5WdFltVnlPMXh1SUNBZ0lITjBaWEEvT2lCdWRXMWlaWEk3WEc1OVhHNWNibUZpYzNSeVlXTjBJR05zWVhOeklFMTFiSFJwUTI5c2RXMXVVbVZrZFdObGNpQjdYRzRnSUNBZ2NISnZkR1ZqZEdWa0lHUmhkR0U2SUZabFkzUnZjbk5iWFR0Y2JpQWdJQ0J3Y205MFpXTjBaV1FnZDJWcFoyaDBjem9nYm5WdFltVnlXMTA3WEc0Z0lDQWdjSEp2ZEdWamRHVmtJR0ZuWjNKbFoyRjBhVzl1VFdWMGFHOWtPaUJFYVhOMFlXNWpaVUZuWjNKbFoyRjBhVzl1VFdWMGFHOWtPMXh1SUNBZ0lHTnZibk4wY25WamRHOXlLRzl3ZEdsdmJuTTZJRTl3ZEdsdmJuTXBJSHRjYmlBZ0lDQWdJSFJvYVhNdVpHRjBZU0E5SUc5d2RHbHZibk11WkdGMFlUdGNiaUFnSUNBZ0lIUm9hWE11ZDJWcFoyaDBjeUE5SUc5d2RHbHZibk11ZDJWcFoyaDBjenRjYmlBZ0lDQWdJSFJvYVhNdVlXZG5jbVZuWVhScGIyNU5aWFJvYjJRZ1BTQnZjSFJwYjI1ekxtRm5aM0psWjJGMGFXOXVUV1YwYUc5a08xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4cUtpQkZiV0psWkhNZ2RHaGxJR1JoZEdFZ1oybDJaVzRnYVc1MGJ5QjBhR1VnZEhkdkxXUnBiV1Z1YzJsdmJtRnNJSE53WVdObExseHVJQ0FnSUNBcUlFQnlaWFIxY200Z2UyRnVlWDBnUTJGeWRHVnphV0Z1SUdOdmIzSmthVzVoZEdVZ2IyWWdkR2hwY3lCbGJXSmxaR1JwYm1jZ1lXNWtJR1JwYzNSaGJtTmxJRzFoZEhKcGVDQjNhR1Z5WlNCaGNIQnNhV05oWW14bExpQXFMMXh1SUNBZ0lHRmljM1J5WVdOMElIUnlZVzV6Wm05eWJTZ3BPaUJRY205dGFYTmxQRTFoZEhKcGVENDdYRzU5WEc1Y2JtTnNZWE56SUZSVFRrVlNaV1IxWTJWeUlHVjRkR1Z1WkhNZ1RYVnNkR2xEYjJ4MWJXNVNaV1IxWTJWeUlIdGNiaUFnSUNCd2NtOTBaV04wWldRZ2NtVmtkV05sY2pvZ1ZGTk9SVHRjYmlBZ0lDQndjbTkwWldOMFpXUWdhWFJsY21GMGFXOXVjem9nYm5WdFltVnlPMXh1SUNBZ0lIQnliM1JsWTNSbFpDQmthWE4wWVc1alpVWnVZVzFsY3pvZ1MyNXZkMjVOWlhSeWFXTnpXMTA3WEc0Z0lDQWdjSEp2ZEdWamRHVmtJR1JwYzNSaGJtTmxSbTV6T2lBb0tHRTZJR0Z1ZVN3Z1lqb2dZVzU1S1NBOVBpQnVkVzFpWlhJcFcxMDdYRzRnSUNBZ2NISnZkR1ZqZEdWa0lHUnBjM1JoYm1ObFJtNUJjbWR6T2lCN1cxODZJSE4wY21sdVoxMDZJR0Z1ZVgxYlhUdGNiaUFnSUNCd2NtOTBaV04wWldRZ2NISnZaM0psYzNOR2RXNWpQem9nS0dWd2IyTTZJRzUxYldKbGNpd2daWEJ2WTJoelRHVnVaM1JvT2lCdWRXMWlaWElzSUdWdFltVmtaR2x1WjNNL09pQnVkVzFpWlhKYlhWdGRLU0E5UGlCMmIybGtPMXh1SUNBZ0lDOHFLbHh1SUNBZ0lDQXFJRU55WldGMFpYTWdZVzRnYVc1emRHRnVZMlVnYjJZZ1ZGTk9SVkpsWkhWalpYSXVYRzRnSUNBZ0lDb2dRSEJoY21GdElIdFBjSFJwYjI1emZTQnZjSFJwYjI1eklFOXdkR2x2Ym5NZ2RHOGdjR0Z6Y3lCMGJ5QjBhR1VnWTI5dWMzUnlkV04wYjNJdVhHNGdJQ0FnSUNvZ1FHMWxiV0psY205bUlGUlRUa1ZTWldSMVkyVnlYRzRnSUNBZ0lDb3ZYRzRnSUNBZ1kyOXVjM1J5ZFdOMGIzSW9iM0IwYVc5dWN6b2dUM0IwYVc5dWN5a2dlMXh1SUNBZ0lDQWdjM1Z3WlhJb2IzQjBhVzl1Y3lrN1hHNGdJQ0FnSUNCamIyNXpkQ0J5WVc1a2IyMVRaV1ZrT2lCemRISnBibWNnUFNCdmNIUnBiMjV6TG5KaGJtUnZiVk5sWldRZ1B6OGdSR0YwWlNncE8xeHVJQ0FnSUNBZ1kyOXVjM1FnY21GdVpHOXRSbTRnUFNCelpXVmtVbUZ1Wkc5dEtISmhibVJ2YlZObFpXUXBPMXh1SUNBZ0lDQWdiM0IwYVc5dWN5NXlZVzVrYjIwZ1BTQnlZVzVrYjIxR2JqdGNiaUFnSUNBZ0lIUm9hWE11Y21Wa2RXTmxjaUE5SUc1bGR5QlVVMDVGS0c5d2RHbHZibk1wTzF4dUlDQWdJQ0FnZEdocGN5NXBkR1Z5WVhScGIyNXpJRDBnYjNCMGFXOXVjejh1YVhSbGNtRjBhVzl1Y3lBL1B5QjBhR2x6TG5KbFpIVmpaWEl1WjJWMFNYUmxjbE5wZW1Vb2RHaHBjeTVrWVhSaFd6QmRMbXhsYm1kMGFDazdYRzRnSUNBZ0lDQjBhR2x6TG1ScGMzUmhibU5sUm01aGJXVnpJRDBnYjNCMGFXOXVjeTVrYVhOMFlXNWpaVVp1WVcxbGN6dGNiaUFnSUNBZ0lIUm9hWE11WkdsemRHRnVZMlZHYm5NZ1BTQnZjSFJwYjI1ekxtUnBjM1JoYm1ObFJtNXpPMXh1SUNBZ0lDQWdkR2hwY3k1a2FYTjBZVzVqWlVadVFYSm5jeUE5SUc5d2RHbHZibk11WkdsemRHRnVZMlZHYmtGeVozTTdYRzRnSUNBZ0lDQjBhR2x6TG5CeWIyZHlaWE56Um5WdVl5QTlJRzl3ZEdsdmJuTXVjSEp2WjNKbGMzTkdkVzVqTzF4dUlDQWdJSDFjYmx4dUlDQWdJQzhxS2x4dUlDQWdJQ0FxSUVWdFltVmtjeUIwYUdVZ1pHRjBZU0JuYVhabGJpQnBiblJ2SUhSb1pTQjBkMjh0WkdsdFpXNXphVzl1WVd3Z2MzQmhZMlVnZFhOcGJtY2dkQzFUVGtVZ2JXVjBhRzlrTGx4Y1hHNGdJQ0FnSUNvZ1FIQmhjbUZ0SUh0aWIyOXNaV0Z1ZlNCYmNHRnlZV3hzWld4RWFYTjBZVzVqWlZkdmNtdGxjbk5kSUZkb1pYUm9aWElnZEc4Z2RYTmxJSEJoY21Gc2JHVnNJR1JwYzNSaGJtTmxJSGR2Y210bGNuTXVYRzRnSUNBZ0lDb2dRSEpsZEhWeWJpQjdZVzU1ZlNCRFlYSjBaWE5wWVc0Z1kyOXZjbVJwYm1GMFpTQnZaaUIwYUdseklHVnRZbVZrWkdsdVp5QmhibVFnWkdsemRHRnVZMlVnYldGMGNtbDRJSGRvWlhKbElHRndjR3hwWTJGaWJHVXVYRzRnSUNBZ0lDb3ZYRzRnSUNBZ2NIVmliR2xqSUdGemVXNWpJSFJ5WVc1elptOXliU2dwT2lCUWNtOXRhWE5sUEUxaGRISnBlRDRnZTF4dUlDQWdJQ0FnYVdZZ0tIUm9hWE11WkdGMFlWc3dYUzVzWlc1bmRHZ2dQaUF4TURBd01DbGNiaUFnSUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtDZE5ZWGhwYlhWdElHNTFiV0psY2lCdlppQnpZVzF3YkdWeklHWnZjaUJVTFZOT1JTQnBjeUF4TURBd01DY3BPMXh1SUNBZ0lDQWdZMjl1YzNRZ2JXRjBjbWw0VTJWeWRtbGpaU0E5SUc1bGR5QkVhWE4wWVc1alpVMWhkSEpwZUZObGNuWnBZMlVvZEhKMVpTd2dabUZzYzJVcE8xeHVJQ0FnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJQ0FnTHk4Z1kyOXVjM1FnWVdkbmNtVm5ZWFJsSUQwZ1oyVjBRV2RuY21WbllYUnBiMjVHZFc1amRHbHZiaWgwYUdsekxtRm5aM0psWjJGMGFXOXVUV1YwYUc5a0xDQjBhR2x6TG5kbGFXZG9kSE1wTzF4dUlDQWdJQ0FnSUNBdkx5QmpiMjV6ZENCa2FYTjBZVzVqWlhNNklFRnljbUY1UEVac2IyRjBNekpCY25KaGVUNGdQU0JiWFR0Y2JpQWdJQ0FnSUNBZ0x5OGdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0IwYUdsekxtUmhkR0V1YkdWdVozUm9PeUFySzJrcElIdGNiaUFnSUNBZ0lDQWdMeThnSUNCamIyNXpkQ0JrYVhOMElEMGdZWGRoYVhRZ2JXRjBjbWw0VTJWeWRtbGpaUzVqWVd4aktIUm9hWE11WkdGMFlWdHBYU3dnZEdocGN5NWthWE4wWVc1alpVWnVZVzFsYzF0cFhTd2dabUZzYzJVc0lIUm9hWE11WkdsemRHRnVZMlZHYmtGeVozTmJhVjBwTzF4dUlDQWdJQ0FnSUNBdkx5QWdJR1JwYzNSaGJtTmxjeTV3ZFhOb0tHUnBjM1FwTzF4dUlDQWdJQ0FnSUNBdkx5QjlYRzRnSUNBZ0lDQWdJQzh2SUdOdmJuTjBJR1JwYzNSaGJtTmxJRDBnYm1WM0lFWnNiMkYwTXpKQmNuSmhlU2hrYVhOMFlXNWpaWE5iTUYwdWJHVnVaM1JvS1M1bWFXeHNLREFwTzF4dUlDQWdJQ0FnSUNBdkx5Qm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR1JwYzNSaGJtTmxjMXN3WFM1c1pXNW5kR2c3SUNzcmFTbGNiaUFnSUNBZ0lDQWdMeThnSUNCa2FYTjBZVzVqWlZ0cFhTQTlJR0ZuWjNKbFoyRjBaU2hrYVhOMFlXNWpaWE11YldGd0tDaGtLU0E5UGlCa1cybGRLU2s3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR1JwYzNSaGJtTmxJRDBnWVhkaGFYUWdiV0YwY21sNFUyVnlkbWxqWlM1allXeGpUWFZzZEdrb2RHaHBjeTVrWVhSaExDQjBhR2x6TG1ScGMzUmhibU5sUm01aGJXVnpMQ0JtWVd4elpTd2dkR2hwY3k1a2FYTjBZVzVqWlVadVFYSm5jeXhjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMbmRsYVdkb2RITXNJSFJvYVhNdVlXZG5jbVZuWVhScGIyNU5aWFJvYjJRcE8xeHVJQ0FnSUNBZ0lDQnRZWFJ5YVhoVFpYSjJhV05sTG5SbGNtMXBibUYwWlNncE8xeHVJQ0FnSUNBZ0lDQXZMeUJqYjI1emRDQnRZWFJ5YVhoUWNtOTRlU0E5SUdScGMzUmhibU5sVFdGMGNtbDRVSEp2ZUhrb1pHbHpkR0Z1WTJVc0lIUm9hWE11WkdGMFlWc3dYUzVzWlc1bmRHZ3BPMXh1SUNBZ0lDQWdJQ0IwYUdsekxuSmxaSFZqWlhJdWFXNXBkRVJoZEdGRWFYTjBLR1JwYzNSaGJtTmxMQ0IwYUdsekxtUmhkR0ZiTUYwdWJHVnVaM1JvS1R0Y2JseHVJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSFJvYVhNdWFYUmxjbUYwYVc5dWN6c2dLeXRwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1eVpXUjFZMlZ5TG5OMFpYQW9LVHNnTHk4Z1pYWmxjbmtnZEdsdFpTQjViM1VnWTJGc2JDQjBhR2x6TENCemIyeDFkR2x2YmlCblpYUnpJR0psZEhSbGNseHVJQ0FnSUNBZ0lDQWdJR2xtSUNoMGFHbHpMbkJ5YjJkeVpYTnpSblZ1WXlsY2JpQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdWNISnZaM0psYzNOR2RXNWpLR2tzSUhSb2FYTXVhWFJsY21GMGFXOXVjeXdnVzEwcE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQjBhR2x6TG5KbFpIVmpaWEl1WjJWMFUyOXNkWFJwYjI0b0tUdGNiaUFnSUNBZ0lIMGdZMkYwWTJnZ0tHVXBJSHRjYmlBZ0lDQWdJQ0FnYldGMGNtbDRVMlZ5ZG1salpTNTBaWEp0YVc1aGRHVW9LVHRjYmlBZ0lDQWdJQ0FnZEdoeWIzY2daVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzU5WEc1Y2JtTnNZWE56SUZWTlFWQlNaV1IxWTJWeUlHVjRkR1Z1WkhNZ1RYVnNkR2xEYjJ4MWJXNVNaV1IxWTJWeUlIdGNiaUFnSUNCd2NtOTBaV04wWldRZ2NtVmtkV05sY2pvZ1ZVMUJVRHRjYmlBZ0lDQndjbTkwWldOMFpXUWdaR2x6ZEdGdVkyVkdibUZ0WlhNNklFdHViM2R1VFdWMGNtbGpjMXRkTzF4dUlDQWdJSEJ5YjNSbFkzUmxaQ0JrYVhOMFlXNWpaVVp1Y3pvZ1JuVnVZM1JwYjI1YlhUdGNiaUFnSUNCd2NtOTBaV04wWldRZ2RtVmpkRzl5Y3pvZ2JuVnRZbVZ5VzEwN1hHNGdJQ0FnY0hKdmRHVmpkR1ZrSUhCeWIyZHlaWE56Um5WdVl6ODZJQ2hsY0c5ak9pQnVkVzFpWlhJc0lHVndiMk5vYzB4bGJtZDBhRG9nYm5WdFltVnlMQ0JsYldKbFpHUnBibWM2SUc1MWJXSmxjbHRkVzEwcElEMCtJSFp2YVdRN1hHNGdJQ0FnY0hKdmRHVmpkR1ZrSUdScGMzUmhibU5sUm01QmNtZHpPaUI3VzE4NklITjBjbWx1WjEwNklHRnVlWDFiWFR0Y2JpQWdJQ0F2S2lwY2JpQWdJQ0FnS2lCRGNtVmhkR1Z6SUdGdUlHbHVjM1JoYm1ObElHOW1JRlZOUVZCU1pXUjFZMlZ5TGx4dUlDQWdJQ0FxSUVCd1lYSmhiU0I3VDNCMGFXOXVjMzBnYjNCMGFXOXVjeUJQY0hScGIyNXpJSFJ2SUhCaGMzTWdkRzhnZEdobElHTnZibk4wY25WamRHOXlMbHh1SUNBZ0lDQXFJRUJ0WlcxaVpYSnZaaUJWVFVGUVVtVmtkV05sY2x4dUlDQWdJQ0FxTDF4dUlDQWdJR052Ym5OMGNuVmpkRzl5S0c5d2RHbHZibk02SUU5d2RHbHZibk1wSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJSEpoYm1SdmJWTmxaV1E2SUhOMGNtbHVaeUE5SUc5d2RHbHZibk11Y21GdVpHOXRVMlZsWkNBL1B5QkVZWFJsS0NrN1hHNGdJQ0FnSUNCamIyNXpkQ0J5WVc1a2IyMUdiaUE5SUhObFpXUlNZVzVrYjIwb2NtRnVaRzl0VTJWbFpDazdYRzRnSUNBZ0lDQnpkWEJsY2lodmNIUnBiMjV6S1R0Y2JpQWdJQ0FnSUdGemMyVnlkQ2duWkdsemRHRnVZMlZHYm1GdFpYTW5JR2x1SUc5d2RHbHZibk1wTzF4dUlDQWdJQ0FnWVhOelpYSjBLQ2RrYVhOMFlXNWpaVVp1Y3ljZ2FXNGdiM0IwYVc5dWN5azdYRzRnSUNBZ0lDQjBhR2x6TG1ScGMzUmhibU5sUm01QmNtZHpJRDBnYjNCMGFXOXVjeTVrYVhOMFlXNWpaVVp1UVhKbmN6dGNiaUFnSUNBZ0lIUm9hWE11WkdsemRHRnVZMlZHYm5NZ1BTQnZjSFJwYjI1ekxtUnBjM1JoYm1ObFJtNXpJVHRjYmlBZ0lDQWdJSFJvYVhNdWNISnZaM0psYzNOR2RXNWpJRDBnYjNCMGFXOXVjeTV3Y205bmNtVnpjMFoxYm1NN1hHNWNiaUFnSUNBZ0lIUm9hWE11WkdsemRHRnVZMlZHYm1GdFpYTWdQU0J2Y0hScGIyNXpMbVJwYzNSaGJtTmxSbTVoYldWeklUdGNiaUFnSUNBZ0lDOHZWVzFoY0NCMWMyVnpJSFpsWTNSdmNpQnBibVJsZUdsdVp5d2djMjhnZDJVZ2JtVmxaQ0IwYnlCamNtVmhkR1VnWVc0Z1lYSnlZWGtnYjJZZ2RtVmpkRzl5Y3lCaGN5QnBibVJsWTJWekxseHVJQ0FnSUNBZ2RHaHBjeTUyWldOMGIzSnpJRDBnYm1WM0lFRnljbUY1S0hSb2FYTXVaR0YwWVZzd1hTNXNaVzVuZEdncExtWnBiR3dvTUNrdWJXRndLQ2hmTENCcEtTQTlQaUJwS1R0Y2JseHVJQ0FnSUNBZ2FXWWdLSFJvYVhNdVpHRjBZVnN3WFM1c1pXNW5kR2dnUEQwZ0tHOXdkR2x2Ym5NdWJrNWxhV2RvWW05eWN5QS9QeUF4TlNrcFhHNGdJQ0FnSUNBZ0lHOXdkR2x2Ym5NdWJrNWxhV2RvWW05eWN5QTlJSFJvYVhNdVpHRjBZVnN3WFM1c1pXNW5kR2dnTFNBeE8xeHVJQ0FnSUNBZ2IzQjBhVzl1Y3k1eVlXNWtiMjBnUFNCeVlXNWtiMjFHYmp0Y2JpQWdJQ0FnSUhSb2FYTXVjbVZrZFdObGNpQTlJRzVsZHlCVlRVRlFLRzl3ZEdsdmJuTXBPMXh1SUNBZ0lDQWdMeThnZEdocGN5NXlaV1IxWTJWeUxtUnBjM1JoYm1ObFJtNGdQU0IwYUdsekxsOWxibU52WkdWa1JHbHpkR0Z1WTJVdVltbHVaQ2gwYUdsektUdGNiaUFnSUNCOVhHNWNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkZiV0psWkhNZ2RHaGxJR1JoZEdFZ1oybDJaVzRnYVc1MGJ5QjBhR1VnZEhkdkxXUnBiV1Z1YzJsdmJtRnNJSE53WVdObElIVnphVzVuSUZWTlFWQWdiV1YwYUc5a0xseHVJQ0FnSUNBcUlFQndZWEpoYlNCN1ltOXZiR1ZoYm4wZ1cxOXdZWEpoYkd4bGJFUnBjM1JoYm1ObFYyOXlhMlZ5YzEwZ1YyaGxkR2hsY2lCMGJ5QjFjMlVnY0dGeVlXeHNaV3dnWkdsemRHRnVZMlVnYldGMGNtbDRJSGR2Y210bGNuTXVYRzRnSUNBZ0lDb2dRSEpsZEhWeWJpQjdZVzU1ZlNCRFlYSjBaWE5wWVc0Z1kyOXZjbVJwYm1GMFpTQnZaaUIwYUdseklHVnRZbVZrWkdsdVp5NWNiaUFnSUNBZ0tpOWNiaUFnSUNCd2RXSnNhV01nWVhONWJtTWdkSEpoYm5ObWIzSnRLRjl3WVhKaGJHeGxiRVJwYzNSaGJtTmxWMjl5YTJWeWN6ODZJR0p2YjJ4bFlXNHBPaUJRY205dGFYTmxQRTFoZEhKcGVENGdlMXh1SUNBZ0lDQWdZMjl1YzI5c1pTNTBhVzFsS0NkcmJtNGdaM0poY0dnbktUdGNiaUFnSUNBZ0lHTnZibk4wSUd0dWJsSmxjeUE5SUdGM1lXbDBJRzVsZHlCVGNHRnljMlZOWVhSeWFYaFRaWEoyYVdObEtDbGNiaUFnSUNBZ0lDQWdMbTExYkhScFEyOXNkVzF1UzA1T0tIUm9hWE11WkdGMFlTd2dkR2hwY3k1a2FYTjBZVzVqWlVadVlXMWxjeXdnZEdocGN5NXlaV1IxWTJWeUxtNWxhV2RvWW05eWN5eGNiaUFnSUNBZ0lDQWdJQ0IwYUdsekxtUnBjM1JoYm1ObFJtNUJjbWR6TENCMGFHbHpMbmRsYVdkb2RITXNJSFJvYVhNdVlXZG5jbVZuWVhScGIyNU5aWFJvYjJRcE8xeHVJQ0FnSUNBZ1kyOXVjMjlzWlM1MGFXMWxSVzVrS0NkcmJtNGdaM0poY0dnbktUdGNiaUFnSUNBZ0lIUm9hWE11Y21Wa2RXTmxjaTV6WlhSUWNtVmpiMjF3ZFhSbFpFdE9UaWhyYm01U1pYTXVhMjV1U1c1a1pYaGxjeXdnYTI1dVVtVnpMbXR1YmtScGMzUmhibU5sY3lrN1hHNWNiaUFnSUNBZ0lDOHZJRzVsWldSbFpDQnpieUIwYUdGMElHZGhjbUpoWjJVZ1kyOXNiR1ZqZEc5eUlHTmhiaUJtY21WbElHMWxiVzl5ZVNCbWNtOXRJR1JwYzNSaGJtTmxJRzFoZEhKcGVGeHVJQ0FnSUNBZ1lYZGhhWFFnYm1WM0lGQnliMjFwYzJVOGRtOXBaRDRvS0hKbGMyOXNkbVVwSUQwK0lIdGNiaUFnSUNBZ0lDQWdjMlYwVkdsdFpXOTFkQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnY21WemIyeDJaU2dwTzF4dUlDQWdJQ0FnSUNCOUxDQXpNREFwTzF4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lHTnZibk4wSUdWdFltVmtaR2x1WnlBOUlHRjNZV2wwSUhSb2FYTXVjbVZrZFdObGNpNW1hWFJCYzNsdVl5aDBhR2x6TG5abFkzUnZjbk1zSUNobGNHOWpLU0E5UGlCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2gwYUdsekxuQnliMmR5WlhOelJuVnVZeWxjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMbkJ5YjJkeVpYTnpSblZ1WXlobGNHOWpMQ0IwYUdsekxuSmxaSFZqWlhJdVoyVjBUa1Z3YjJOb2N5Z3BMQ0IwYUdsekxuSmxaSFZqWlhJdVoyVjBSVzFpWldSa2FXNW5LQ2twTzF4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lHWjFibU4wYVc5dUlHRnljbUY1UTJGemRESkRiMjl5WkdsdVlYUmxjeWhrWVhSaE9pQnVkVzFpWlhKYlhWdGRLVG9nUTI5dmNtUnBibUYwWlhNZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z2JtVjNJRUZ5Y21GNUtHUmhkR0V1YkdWdVozUm9LUzVtYVd4c0tEQXBMbTFoY0Nnb1h5d2dhU2tnUFQ0Z0tGWmxZM1J2Y2k1bWNtOXRLR1JoZEdGYmFWMHBLU2s3WEc0Z0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUhKbGRIVnliaUJoY25KaGVVTmhjM1F5UTI5dmNtUnBibUYwWlhNb1pXMWlaV1JrYVc1bktUdGNiaUFnSUNCOVhHNTlYRzVjYm1OdmJuTjBJRUYyWVdsc1lXSnNaVkpsWkhWalpYSnpJRDBnZTF4dUlDQW5WVTFCVUNjNklGVk5RVkJTWldSMVkyVnlMRnh1SUNBbmRDMVRUa1VuT2lCVVUwNUZVbVZrZFdObGNpeGNibjA3WEc1Y2JtVjRjRzl5ZENCMGVYQmxJRXR1YjNkdVRXVjBhRzlrY3lBOUlHdGxlVzltSUhSNWNHVnZaaUJCZG1GcGJHRmliR1ZTWldSMVkyVnljenRjYmx4dVpYaHdiM0owSUdOc1lYTnpJRTExYkhScFEyOXNSR2x0VW1Wa2RXTmxjaUI3WEc0Z0lDQWdjSEpwZG1GMFpTQnlaV1IxWTJWeU9pQk5kV3gwYVVOdmJIVnRibEpsWkhWalpYSWdmQ0IxYm1SbFptbHVaV1E3WEc0Z0lDQWdMeW9xWEc0Z0lDQXFJRU55WldGMFpYTWdZVzRnYVc1emRHRnVZMlVnYjJZZ1JHbHRaVzV6YVc5dVlXeHBkSGxTWldSMVkyVnlMbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UyRnVlVnRkZlNCa1lYUmhJRlpsWTNSdmNuTWdkRzhnWlcxaVpXUXVYRzRnSUNBcUlFQndZWEpoYlNCN1MyNXZkMjVOWlhSb2IyUnpmU0J0WlhSb2IyUWdSVzFpWldSa2FXNW5JRzFsZEdodlpDQjBieUJpWlNCaGNIQnNhV1ZrWEc0Z0lDQXFJRUJ3WVhKaGJTQjdTMjV2ZDI1TlpYUnlhV056ZlNCdFpYUnlhV01nUkdsemRHRnVZMlVnYldWMGNtbGpJSFJ2SUdKbElHTnZiWEIxZEdWa0lHSmxkSGRsWlc0Z1pXRmphQ0J2WmlCMGFHVWdkbVZqZEc5eWN5NWNiaUFnSUNvZ1FIQmhjbUZ0SUh0UGNIUnBiMjV6ZlNCYmIzQjBhVzl1YzEwZ1QzQjBhVzl1Y3lCMGJ5QndZWE56SUhSdklIUm9aU0JwYlhCc1pXMWxiblJwYm1jZ1pXMWlaV1JrWlhKekxseHVJQ0FnS2lCQWJXVnRZbVZ5YjJZZ1JHbHRaVzV6YVc5dVlXeHBkSGxTWldSMVkyVnlYRzRnSUNBcUwxeHVJQ0FnSUdOdmJuTjBjblZqZEc5eUtHUmhkR0U2SUVGeWNtRjVQR0Z1ZVZ0ZFBpd2diV1YwYUc5a09pQkVhVzFTWldSMVkzUnBiMjVOWlhSb2IyUnpMQ0J0WlhSeWFXTnpPaUJMYm05M2JrMWxkSEpwWTNOYlhTeGNiaUFnSUNBZ0lIZGxhV2RvZEhNNklHNTFiV0psY2x0ZExDQmthWE4wWVc1alpVRm5aM0psWjJGMGFXOXVPaUJFYVhOMFlXNWpaVUZuWjNKbFoyRjBhVzl1VFdWMGFHOWtMQ0J2Y0hScGIyNXpPaUJQY0hScGIyNXpLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQnRaV0Z6ZFhKbGN6b2dSR2x6ZEdGdVkyVk5aWFJ5YVdOYlhTQTlJRnRkTzF4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYVdSNElEMGdNRHNnYVdSNElEd2diV1YwY21samN5NXNaVzVuZEdnN0lDc3JhV1I0S1NCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUcxbFlYTjFjbVVnUFNCdVpYY2dUV1ZoYzNWeVpTaHRaWFJ5YVdOelcybGtlRjBwTG1kbGRFMWxZWE4xY21Vb2IzQjBhVzl1Y3k1a2FYTjBZVzVqWlVadVFYSm5jMXRwWkhoZEtUdGNiaUFnSUNBZ0lDQWdiV1ZoYzNWeVpYTXVjSFZ6YUNodFpXRnpkWEpsS1R0Y2JpQWdJQ0FnSUNBZ2JHVjBJR0pwZEVGeWNtRjVUR1Z1WjNSb0lEMGdNakEwT0R0Y2JpQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQmtZWFJoVzJsa2VGMHViR1Z1WjNSb095QXJLMmtwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnBaaUFvWkdGMFlWdHBaSGhkVzJsZElDWW1JR1JoZEdGYmFXUjRYVnRwWFM1ZmJHVnVaM1JvS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JpYVhSQmNuSmhlVXhsYm1kMGFDQTlJR1JoZEdGYmFXUjRYVnRwWFM1ZmJHVnVaM1JvTzF4dUlDQWdJQ0FnSUNBZ0lDQWdZbkpsWVdzN1hHNGdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUdsbUlDaHBjMEpwZEVGeWNtRjVUV1YwY21saktHMWxkSEpwWTNOYmFXUjRYU2twSUh0Y2JpQWdJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR1JoZEdGYmFXUjRYUzVzWlc1bmRHZzdJQ3NyYVNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHUmhkR0ZiYVdSNFhWdHBYU0FtSmlCa1lYUmhXMmxrZUYxYmFWMHVYMlJoZEdFcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUdSaGRHRmJhV1I0WFZ0cFhTQTlJRzVsZHlCQ2FYUkJjbkpoZVNoa1lYUmhXMmxrZUYxYmFWMHVYMlJoZEdFc0lHUmhkR0ZiYVdSNFhWdHBYUzVmYkdWdVozUm9LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHVnNjMlZjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdaR0YwWVZ0cFpIaGRXMmxkSUQwZ2JtVjNJRUpwZEVGeWNtRjVLR0pwZEVGeWNtRjVUR1Z1WjNSb0tUdGNiaUFnSUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ2FXWWdLRzFsZEdodlpDQTlQU0FuVlUxQlVDY3BJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXlaV1IxWTJWeUlEMGdibVYzSUZWTlFWQlNaV1IxWTJWeUtIdGNiaUFnSUNBZ0lDQWdJQ0JrWVhSaE9pQmtZWFJoTEZ4dUlDQWdJQ0FnSUNBZ0lHUnBjM1JoYm1ObFJtNWhiV1Z6T2lCdFpYUnlhV056TEZ4dUlDQWdJQ0FnSUNBZ0lHUnBjM1JoYm1ObFJtNXpPaUJ0WldGemRYSmxjeXhjYmlBZ0lDQWdJQ0FnSUNCa2FYTjBZVzVqWlVadVFYSm5jem9nYjNCMGFXOXVjeTVrYVhOMFlXNWpaVVp1UVhKbmN5eGNiaUFnSUNBZ0lDQWdJQ0IzWldsbmFIUnpPaUIzWldsbmFIUnpMRnh1SUNBZ0lDQWdJQ0FnSUdGblozSmxaMkYwYVc5dVRXVjBhRzlrT2lCa2FYTjBZVzVqWlVGblozSmxaMkYwYVc5dUxGeHVJQ0FnSUNBZ0lDQWdJQzR1TG05d2RHbHZibk5jYmlBZ0lDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNCOUlHVnNjMlVnYVdZZ0tHMWxkR2h2WkNBOVBTQW5kQzFUVGtVbktTQjdYRzRnSUNBZ0lDQWdJSFJvYVhNdWNtVmtkV05sY2lBOUlHNWxkeUJVVTA1RlVtVmtkV05sY2loN1hHNGdJQ0FnSUNBZ0lDQWdaR0YwWVRvZ1pHRjBZU3hjYmlBZ0lDQWdJQ0FnSUNCa2FYTjBZVzVqWlVadVlXMWxjem9nYldWMGNtbGpjeXhjYmlBZ0lDQWdJQ0FnSUNCa2FYTjBZVzVqWlVadWN6b2diV1ZoYzNWeVpYTXNYRzRnSUNBZ0lDQWdJQ0FnWkdsemRHRnVZMlZHYmtGeVozTTZJRzl3ZEdsdmJuTXVaR2x6ZEdGdVkyVkdia0Z5WjNNc1hHNGdJQ0FnSUNBZ0lDQWdkMlZwWjJoMGN6b2dkMlZwWjJoMGN5eGNiaUFnSUNBZ0lDQWdJQ0JoWjJkeVpXZGhkR2x2YmsxbGRHaHZaRG9nWkdsemRHRnVZMlZCWjJkeVpXZGhkR2x2Yml4Y2JpQWdJQ0FnSUNBZ0lDQXVMaTV2Y0hScGIyNXpYRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDFjYmx4dUlDQWdJQzhxS2x4dUlDQWdLaUJGYldKbFpITWdkR2hsSUdSaGRHRWdaMmwyWlc0Z2FXNTBieUIwYUdVZ2RIZHZMV1JwYldWdWMybHZibUZzSUhOd1lXTmxJSFZ6YVc1bklIUm9aU0JqYUc5elpXNGdiV1YwYUc5a0xseHVJQ0FnS2x4dUlDQWdLaUJBY0dGeVlXMGdlMkp2YjJ4bFlXNTlJSFJ5WVc1emNHOXpaU0JYYUdWMGFHVnlJSFJ2SUhSeVlXNXpabTl5YlNCamIyOXlaR2x1WVhSbGN5QjBieUJvWVhabElHTnZiSFZ0Ym5NdFptbHljM1FnYjNKcFpXNTBZWFJwYjI0dVhHNGdJQ0FxSUVCd1lYSmhiU0I3WW05dmJHVmhibjBnY0dGeVlXeHNaV3hFYVhOMFlXNWpaVmR2Y210bGNuTWdWMmhsZEdobGNpQjBieUIxYzJVZ2NHRnlZV3hzWld3Z1pHbHpkR0Z1WTJVZ1kyOXRjSFYwWVhScGIyNHVYRzRnSUNBcUlFQjBhSEp2ZDNNZ2UwVnljbTl5ZlNCSlppQjBhR1VnWlcxaVpXUmthVzVuSUcxbGRHaHZaQ0IzWVhNZ2JtOTBJR1p2ZFc1a0xseHVJQ0FnS2lCQWNtVjBkWEp1SUh0aGJubDlJRU5oY25SbGMybGhiaUJqYjI5eVpHbHVZWFJsSUc5bUlIUm9hWE1nWlcxaVpXUmthVzVuSUdGdVpDQmthWE4wWVc1alpTQnRZWFJ5YVhnZ2QyaGxjbVVnWVhCd2JHbGpZV0pzWlM1Y2JpQWdJQ29nUUcxbGJXSmxjbTltSUVScGJXVnVjMmx2Ym1Gc2FYUjVVbVZrZFdObGNseHVJQ0FnS2k5Y2JpQWdJQ0J3ZFdKc2FXTWdZWE41Ym1NZ2RISmhibk5tYjNKdEtIUnlZVzV6Y0c5elpUb2dZbTl2YkdWaGJpQTlJR1poYkhObEtUb2dVSEp2YldselpUeE5ZWFJ5YVhnK0lIdGNiaUFnSUNBZ0lHbG1JQ2gwYUdsekxuSmxaSFZqWlhJZ1BUMDlJSFZ1WkdWbWFXNWxaQ2xjYmlBZ0lDQWdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLQ2RTWldSMVkyVnlJSGRoY3lCdWIzUWdaR1ZtYVc1bFpDNG5LVHRjYmx4dUlDQWdJQ0FnYkdWMElHVnRZbVZrWkdsdVp5QTlJR0YzWVdsMElIUm9hWE11Y21Wa2RXTmxjaTUwY21GdWMyWnZjbTBvS1R0Y2JseHVJQ0FnSUNBZ2FXWWdLSFJ5WVc1emNHOXpaU2xjYmlBZ0lDQWdJQ0FnWlcxaVpXUmthVzVuSUQwZ2RISmhibk53YjNObFRXRjBjbWw0S0dWdFltVmtaR2x1WnlrN1hHNWNiaUFnSUNBZ0lISmxkSFZ5YmlCbGJXSmxaR1JwYm1jN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHlvcVhHNGdJQ0FxSUZKbGRIVnlibk1nYldWMGNtbGpjeUJoZG1GcGJHRmliR1VnWW5rZ2RIbHdaUzVjYmlBZ0lDcGNiaUFnSUNvZ1FIQmhjbUZ0SUh0QmRtRnBiR0ZpYkdWRVlYUmhWSGx3WlhOOUlIUjVjR1ZPWVcxbElIUjVjR1VnYm1GdFpWeHVJQ0FnS2lCQWNtVjBkWEp1SUh0emRISnBibWRiWFgwZ1RXVjBjbWxqSUc1aGJXVnpJSGRvYVdOb0lHVjRjR1ZqZEhNZ2RHaGxJR2RwZG1WdUlHUmhkR0VnZEhsd1pWeHVJQ0FnS2lCQWJXVnRZbVZ5YjJZZ1JHbHRaVzV6YVc5dVlXeHBkSGxTWldSMVkyVnlYRzRnSUNBcUwxeHVJQ0FnSUhOMFlYUnBZeUJoZG1GcGJHRmliR1ZOWlhSeWFXTnpRbmxVZVhCbEtIUjVjR1ZPWVcxbE9pQkJkbUZwYkdGaWJHVkVZWFJoVkhsd1pYTXBJSHRjYmlBZ0lDQWdJSEpsZEhWeWJpQlBZbXBsWTNRdWEyVjVjeWhCZG1GcGJHRmliR1ZOWlhSeWFXTnpXM1I1Y0dWT1lXMWxYU2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdMeW9xWEc0Z0lDQXFJRkpsZEhWeWJuTWdaR2x0Wlc1emFXOXVZV3hwZEhrZ2NtVmtkV04wYVc5dUlHMWxkR2h2WkhNZ1lYWmhhV3hoWW14bExseHVJQ0FnS2x4dUlDQWdLaUJBY21WaFpHOXViSGxjYmlBZ0lDb2dRRzFsYldKbGNtOW1JRVJwYldWdWMybHZibUZzYVhSNVVtVmtkV05sY2x4dUlDQWdLaTljYmlBZ0lDQnpkR0YwYVdNZ1oyVjBJR0YyWVdsc1lXSnNaVTFsZEdodlpITW9LU0I3WEc0Z0lDQWdJQ0J5WlhSMWNtNGdUMkpxWldOMExtdGxlWE1vUVhaaGFXeGhZbXhsVW1Wa2RXTmxjbk1wTzF4dUlDQWdJSDFjYmx4dUlDQWdJQzhxS2x4dUlDQWdLaUJTWlhSMWNtNXpJRzFsZEhKcFkzTWdZWFpoYVd4aFlteGxMbHh1SUNBZ0tseHVJQ0FnS2lCQWNtVmhaRzl1YkhsY2JpQWdJQ29nUUcxbGJXSmxjbTltSUVScGJXVnVjMmx2Ym1Gc2FYUjVVbVZrZFdObGNseHVJQ0FnS2k5Y2JpQWdJQ0J6ZEdGMGFXTWdaMlYwSUdGMllXbHNZV0pzWlUxbGRISnBZM01vS1NCN1hHNGdJQ0FnSUNCc1pYUWdZVzV6T2lCemRISnBibWRiWFNBOUlGdGRPMXh1SUNBZ0lDQWdUMkpxWldOMExuWmhiSFZsY3loQmRtRnBiR0ZpYkdWTlpYUnlhV056S1M1bWIzSkZZV05vS0Nodlltb3BJRDArSUh0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWVhKeVlYa2dQU0JQWW1wbFkzUXVkbUZzZFdWektHOWlhaWs3WEc0Z0lDQWdJQ0FnSUdGdWN5QTlJRnN1TGk1aGJuTXNJQzR1TG1GeWNtRjVYVHRjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnY21WMGRYSnVJR0Z1Y3p0Y2JpQWdJQ0I5WEc1OVhHNGlYWDA9IiwiaW1wb3J0IHsgTXVsdGlDb2xEaW1SZWR1Y2VyIH0gZnJvbSAnLi9tdWx0aS1jb2x1bW4tZGltLXJlZHVjZXInO1xuLyoqXG4gKiBXb3JrZXIgdGhyZWFkIHJlY2VpdmluZyBkYXRhIGZ1bmN0aW9uLlxuICpcbiAqIEBwYXJhbSB7YW55W119IGNvbHVtbkRhdGEgU2FtcGxlcyB0byBwcm9jZXNzLlxuICogQHBhcmFtIHtLbm93bk1ldGhvZHN9IG1ldGhvZCBFbWJlZGRpbmcgbWV0aG9kLlxuICogQHBhcmFtIHtLbm93bk1ldHJpY3N9IG1lYXN1cmUgRGlzdGFuY2UgbWV0cmljLlxuICogQHBhcmFtIHthbnl9IG9wdGlvbnMgT3B0aW9ucyB0byBwYXNzIHRvIGFsZ29yaXRobS5cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gcGFyYWxsZWxEaXN0YW5jZVdvcmtlcnMgV2hldGhlciB0byB1c2UgcGFyYWxsZWwgZGlzdGFuY2Ugd29ya2Vycy5cbiAqIEByZXR1cm4ge2FueX0gRW1iZWRkaW5nIChhbmQgZGlzdGFuY2UgbWF0cml4IHdoZXJlIGFwcGxpY2FibGUpLlxuICovXG5hc3luYyBmdW5jdGlvbiBvbk1lc3NhZ2UoY29sdW1uc0RhdGEsIG1ldGhvZCwgbWV0cmljcywgd2VpZ2h0cywgYWdncmVnYXRpb25NZXRob2QsIG9wdGlvbnMpIHtcbiAgICBjb25zdCByZWR1Y2VyID0gbmV3IE11bHRpQ29sRGltUmVkdWNlcihjb2x1bW5zRGF0YSwgbWV0aG9kLCBtZXRyaWNzLCB3ZWlnaHRzLCBhZ2dyZWdhdGlvbk1ldGhvZCwgeyAuLi5vcHRpb25zLCBwcm9ncmVzc0Z1bmMgfSk7XG4gICAgcmV0dXJuIGF3YWl0IHJlZHVjZXIudHJhbnNmb3JtKHRydWUpO1xufVxuYXN5bmMgZnVuY3Rpb24gcHJvZ3Jlc3NGdW5jKGVwb2NoTnVtLCBlcG9jaHNMZW5ndGgsIGVtYmVkZGluZykge1xuICAgIGlmIChlcG9jaE51bSAlIDUgPT09IDApXG4gICAgICAgIHNlbGYucG9zdE1lc3NhZ2UoeyBlcG9jaE51bSwgZXBvY2hzTGVuZ3RoLCBlbWJlZGRpbmcgfSk7XG59XG5zZWxmLm9ubWVzc2FnZSA9IGFzeW5jICh7IGRhdGE6IHsgY29sdW1uc0RhdGEsIG1ldGhvZCwgZGlzdGFuY2VNZXRyaWNzLCBvcHRpb25zLCB3ZWlnaHRzLCBhZ2dyZWdhdGlvbk1ldGhvZCB9IH0pID0+IHtcbiAgICBsZXQgZGF0YTtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBlbWJlZGRpbmcgPSBhd2FpdCBvbk1lc3NhZ2UoY29sdW1uc0RhdGEsIG1ldGhvZCwgZGlzdGFuY2VNZXRyaWNzLCB3ZWlnaHRzLCBhZ2dyZWdhdGlvbk1ldGhvZCwgb3B0aW9ucyk7XG4gICAgICAgIGRhdGEgPSB7IGVtYmVkZGluZyB9O1xuICAgIH1cbiAgICBjYXRjaCAoZSkge1xuICAgICAgICBkYXRhID0geyBlcnJvcjogZSB9O1xuICAgIH1cbiAgICBzZWxmLnBvc3RNZXNzYWdlKHtcbiAgICAgICAgZXJyb3I6IGRhdGEuZXJyb3IsXG4gICAgICAgIGVtYmVkZGluZzogZGF0YS5lbWJlZGRpbmcsXG4gICAgfSk7XG59O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pYlhWc2FYUXRZMjlzZFcxdUxXUnBiUzF5WldSMVkyVnlMWGR2Y210bGNpNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW0xMWJHbDBMV052YkhWdGJpMWthVzB0Y21Wa2RXTmxjaTEzYjNKclpYSXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCU1VFc1QwRkJUeXhGUVVGRExHdENRVUZyUWl4RlFVRkRMRTFCUVUwc05FSkJRVFJDTEVOQlFVTTdRVUZGT1VRN096czdPenM3T3p0SFFWTkhPMEZCUTBnc1MwRkJTeXhWUVVGVkxGTkJRVk1zUTBGQlF5eFhRVUY1UWl4RlFVRkZMRTFCUVRKQ0xFVkJRVVVzVDBGQmRVSXNSVUZEZEVjc1QwRkJhVUlzUlVGQlJTeHBRa0ZCTkVNc1JVRkRMMFFzVDBGQldUdEpRVU5hTEUxQlFVMHNUMEZCVHl4SFFVRkhMRWxCUVVrc2EwSkJRV3RDTEVOQlEzQkRMRmRCUVZjc1JVRkRXQ3hOUVVGTkxFVkJRMDRzVDBGQlR5eEZRVU5RTEU5QlFVOHNSVUZEVUN4cFFrRkJhVUlzUlVGRGFrSXNSVUZCUXl4SFFVRkhMRTlCUVU4c1JVRkJSU3haUVVGWkxFVkJRVU1zUTBGRE0wSXNRMEZCUXp0SlFVTkdMRTlCUVU4c1RVRkJUU3hQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTNaRExFTkJRVU03UVVGRlJDeExRVUZMTEZWQlFWVXNXVUZCV1N4RFFVRkRMRkZCUVdkQ0xFVkJRVVVzV1VGQmIwSXNSVUZCUlN4VFFVRnhRanRKUVVOMlJpeEpRVUZKTEZGQlFWRXNSMEZCUnl4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVOd1FpeEpRVUZKTEVOQlFVTXNWMEZCVnl4RFFVRkRMRVZCUVVNc1VVRkJVU3hGUVVGRkxGbEJRVmtzUlVGQlJTeFRRVUZUTEVWQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXpGRUxFTkJRVU03UVVGRlJDeEpRVUZKTEVOQlFVTXNVMEZCVXl4SFFVRkhMRXRCUVVzc1JVRkJSU3hGUVVGRExFbEJRVWtzUlVGQlJTeEZRVUZETEZkQlFWY3NSVUZCUlN4TlFVRk5MRVZCUVVVc1pVRkJaU3hGUVVGRkxFOUJRVThzUlVGQlJTeFBRVUZQTEVWQlFVVXNhVUpCUVdsQ0xFVkJRVU1zUlVGQlF5eEZRVUZGTEVWQlFVVTdTVUZETjBjc1NVRkJTU3hKUVVGdlF5eERRVUZETzBsQlEzcERMRWxCUVVrN1VVRkRSaXhOUVVGTkxGTkJRVk1zUjBGQlJ5eE5RVUZOTEZOQlFWTXNRMEZCUXl4WFFVRlhMRVZCUVVVc1RVRkJUU3hGUVVGRkxHVkJRV1VzUlVGQlJTeFBRVUZQTEVWQlFVVXNhVUpCUVdsQ0xFVkJRVVVzVDBGQlR5eERRVUZETEVOQlFVTTdVVUZETjBjc1NVRkJTU3hIUVVGSExFVkJRVU1zVTBGQlV5eEZRVUZETEVOQlFVTTdTMEZEY0VJN1NVRkJReXhQUVVGUExFTkJRVTBzUlVGQlJUdFJRVU5tTEVsQlFVa3NSMEZCUnl4RlFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRExFVkJRVU1zUTBGQlF6dExRVU51UWp0SlFVTkVMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVU03VVVGRFppeExRVUZMTEVWQlFVVXNTVUZCU1N4RFFVRkRMRXRCUVVzN1VVRkRha0lzVTBGQlV5eEZRVUZGTEVsQlFVa3NRMEZCUXl4VFFVRlRPMHRCUXpGQ0xFTkJRVU1zUTBGQlF6dEJRVU5NTEVOQlFVTXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCN1RXRjBjbWw0ZlNCbWNtOXRJQ2RBWkdGMFlXZHliMnN0YkdsaWNtRnlhV1Z6TDNWMGFXeHpMM055WXk5MGVYQmxMV1JsWTJ4aGNtRjBhVzl1Y3ljN1hHNXBiWEJ2Y25RZ2UwdHViM2R1VFdWMGNtbGpjMzBnWm5KdmJTQW5MaTR2ZEhsd1pXUXRiV1YwY21samN5OTBlWEJsWkMxdFpYUnlhV056Snp0Y2JtbHRjRzl5ZENCN1JHbHRVbVZrZFdOMGFXOXVUV1YwYUc5a2MzMGdabkp2YlNBbkxpOTBlWEJsY3ljN1hHNXBiWEJ2Y25RZ2UwUnBjM1JoYm1ObFFXZG5jbVZuWVhScGIyNU5aWFJvYjJSOUlHWnliMjBnSnk0dUwyUnBjM1JoYm1ObExXMWhkSEpwZUM5MGVYQmxjeWM3WEc1cGJYQnZjblFnZTAxMWJIUnBRMjlzUkdsdFVtVmtkV05sY24wZ1puSnZiU0FuTGk5dGRXeDBhUzFqYjJ4MWJXNHRaR2x0TFhKbFpIVmpaWEluTzF4dVhHNHZLaXBjYmlBcUlGZHZjbXRsY2lCMGFISmxZV1FnY21WalpXbDJhVzVuSUdSaGRHRWdablZ1WTNScGIyNHVYRzRnS2x4dUlDb2dRSEJoY21GdElIdGhibmxiWFgwZ1kyOXNkVzF1UkdGMFlTQlRZVzF3YkdWeklIUnZJSEJ5YjJObGMzTXVYRzRnS2lCQWNHRnlZVzBnZTB0dWIzZHVUV1YwYUc5a2MzMGdiV1YwYUc5a0lFVnRZbVZrWkdsdVp5QnRaWFJvYjJRdVhHNGdLaUJBY0dGeVlXMGdlMHR1YjNkdVRXVjBjbWxqYzMwZ2JXVmhjM1Z5WlNCRWFYTjBZVzVqWlNCdFpYUnlhV011WEc0Z0tpQkFjR0Z5WVcwZ2UyRnVlWDBnYjNCMGFXOXVjeUJQY0hScGIyNXpJSFJ2SUhCaGMzTWdkRzhnWVd4bmIzSnBkR2h0TGx4dUlDb2dRSEJoY21GdElIdGliMjlzWldGdWZTQndZWEpoYkd4bGJFUnBjM1JoYm1ObFYyOXlhMlZ5Y3lCWGFHVjBhR1Z5SUhSdklIVnpaU0J3WVhKaGJHeGxiQ0JrYVhOMFlXNWpaU0IzYjNKclpYSnpMbHh1SUNvZ1FISmxkSFZ5YmlCN1lXNTVmU0JGYldKbFpHUnBibWNnS0dGdVpDQmthWE4wWVc1alpTQnRZWFJ5YVhnZ2QyaGxjbVVnWVhCd2JHbGpZV0pzWlNrdVhHNGdLaTljYm1GemVXNWpJR1oxYm1OMGFXOXVJRzl1VFdWemMyRm5aU2hqYjJ4MWJXNXpSR0YwWVRvZ1FYSnlZWGs4WVc1NVcxMCtMQ0J0WlhSb2IyUTZJRVJwYlZKbFpIVmpkR2x2YmsxbGRHaHZaSE1zSUcxbGRISnBZM002SUV0dWIzZHVUV1YwY21samMxdGRMRnh1SUNCM1pXbG5hSFJ6T2lCdWRXMWlaWEpiWFN3Z1lXZG5jbVZuWVhScGIyNU5aWFJvYjJRNklFUnBjM1JoYm1ObFFXZG5jbVZuWVhScGIyNU5aWFJvYjJRc1hHNGdJRzl3ZEdsdmJuTTZJR0Z1ZVNrNklGQnliMjFwYzJVOFRXRjBjbWw0UGlCN1hHNGdJR052Ym5OMElISmxaSFZqWlhJZ1BTQnVaWGNnVFhWc2RHbERiMnhFYVcxU1pXUjFZMlZ5S0Z4dUlDQWdJR052YkhWdGJuTkVZWFJoTEZ4dUlDQWdJRzFsZEdodlpDeGNiaUFnSUNCdFpYUnlhV056TEZ4dUlDQWdJSGRsYVdkb2RITXNYRzRnSUNBZ1lXZG5jbVZuWVhScGIyNU5aWFJvYjJRc1hHNGdJQ0FnZXk0dUxtOXdkR2x2Ym5Nc0lIQnliMmR5WlhOelJuVnVZMzFjYmlBZ0tUdGNiaUFnY21WMGRYSnVJR0YzWVdsMElISmxaSFZqWlhJdWRISmhibk5tYjNKdEtIUnlkV1VwTzF4dWZWeHVYRzVoYzNsdVl5Qm1kVzVqZEdsdmJpQndjbTluY21WemMwWjFibU1vWlhCdlkyaE9kVzA2SUc1MWJXSmxjaXdnWlhCdlkyaHpUR1Z1WjNSb09pQnVkVzFpWlhJc0lHVnRZbVZrWkdsdVp6b2diblZ0WW1WeVcxMWJYU2tnZTF4dUlDQnBaaUFvWlhCdlkyaE9kVzBnSlNBMUlEMDlQU0F3S1Z4dUlDQWdJSE5sYkdZdWNHOXpkRTFsYzNOaFoyVW9lMlZ3YjJOb1RuVnRMQ0JsY0c5amFITk1aVzVuZEdnc0lHVnRZbVZrWkdsdVozMHBPMXh1ZlZ4dVhHNXpaV3htTG05dWJXVnpjMkZuWlNBOUlHRnplVzVqSUNoN1pHRjBZVG9nZTJOdmJIVnRibk5FWVhSaExDQnRaWFJvYjJRc0lHUnBjM1JoYm1ObFRXVjBjbWxqY3l3Z2IzQjBhVzl1Y3l3Z2QyVnBaMmgwY3l3Z1lXZG5jbVZuWVhScGIyNU5aWFJvYjJSOWZTa2dQVDRnZTF4dUlDQnNaWFFnWkdGMFlUb2dlMlZ5Y205eVB6b2dZVzU1TENCbGJXSmxaR1JwYm1jL09pQmhibmw5TzF4dUlDQjBjbmtnZTF4dUlDQWdJR052Ym5OMElHVnRZbVZrWkdsdVp5QTlJR0YzWVdsMElHOXVUV1Z6YzJGblpTaGpiMngxYlc1elJHRjBZU3dnYldWMGFHOWtMQ0JrYVhOMFlXNWpaVTFsZEhKcFkzTXNJSGRsYVdkb2RITXNJR0ZuWjNKbFoyRjBhVzl1VFdWMGFHOWtMQ0J2Y0hScGIyNXpLVHRjYmlBZ0lDQmtZWFJoSUQwZ2UyVnRZbVZrWkdsdVozMDdYRzRnSUgwZ1kyRjBZMmdnS0dVNklHRnVlU2tnZTF4dUlDQWdJR1JoZEdFZ1BTQjdaWEp5YjNJNklHVjlPMXh1SUNCOVhHNGdJSE5sYkdZdWNHOXpkRTFsYzNOaFoyVW9lMXh1SUNBZ0lHVnljbTl5T2lCa1lYUmhMbVZ5Y205eUxGeHVJQ0FnSUdWdFltVmtaR2x1WnpvZ1pHRjBZUzVsYldKbFpHUnBibWNzWEc0Z0lIMHBPMXh1ZlR0Y2JpSmRmUT09IiwiLy8gQSBsaWJyYXJ5IG9mIHNlZWRhYmxlIFJOR3MgaW1wbGVtZW50ZWQgaW4gSmF2YXNjcmlwdC5cbi8vXG4vLyBVc2FnZTpcbi8vXG4vLyB2YXIgc2VlZHJhbmRvbSA9IHJlcXVpcmUoJ3NlZWRyYW5kb20nKTtcbi8vIHZhciByYW5kb20gPSBzZWVkcmFuZG9tKDEpOyAvLyBvciBhbnkgc2VlZC5cbi8vIHZhciB4ID0gcmFuZG9tKCk7ICAgICAgIC8vIDAgPD0geCA8IDEuICBFdmVyeSBiaXQgaXMgcmFuZG9tLlxuLy8gdmFyIHggPSByYW5kb20ucXVpY2soKTsgLy8gMCA8PSB4IDwgMS4gIDMyIGJpdHMgb2YgcmFuZG9tbmVzcy5cblxuLy8gYWxlYSwgYSA1My1iaXQgbXVsdGlwbHktd2l0aC1jYXJyeSBnZW5lcmF0b3IgYnkgSm9oYW5uZXMgQmFhZ8O4ZS5cbi8vIFBlcmlvZDogfjJeMTE2XG4vLyBSZXBvcnRlZCB0byBwYXNzIGFsbCBCaWdDcnVzaCB0ZXN0cy5cbnZhciBhbGVhID0gcmVxdWlyZSgnLi9saWIvYWxlYScpO1xuXG4vLyB4b3IxMjgsIGEgcHVyZSB4b3Itc2hpZnQgZ2VuZXJhdG9yIGJ5IEdlb3JnZSBNYXJzYWdsaWEuXG4vLyBQZXJpb2Q6IDJeMTI4LTEuXG4vLyBSZXBvcnRlZCB0byBmYWlsOiBNYXRyaXhSYW5rIGFuZCBMaW5lYXJDb21wLlxudmFyIHhvcjEyOCA9IHJlcXVpcmUoJy4vbGliL3hvcjEyOCcpO1xuXG4vLyB4b3J3b3csIEdlb3JnZSBNYXJzYWdsaWEncyAxNjAtYml0IHhvci1zaGlmdCBjb21iaW5lZCBwbHVzIHdleWwuXG4vLyBQZXJpb2Q6IDJeMTkyLTJeMzJcbi8vIFJlcG9ydGVkIHRvIGZhaWw6IENvbGxpc2lvbk92ZXIsIFNpbXBQb2tlciwgYW5kIExpbmVhckNvbXAuXG52YXIgeG9yd293ID0gcmVxdWlyZSgnLi9saWIveG9yd293Jyk7XG5cbi8vIHhvcnNoaWZ0NywgYnkgRnJhbsOnb2lzIFBhbm5ldG9uIGFuZCBQaWVycmUgTCdlY3V5ZXIsIHRha2VzXG4vLyBhIGRpZmZlcmVudCBhcHByb2FjaDogaXQgYWRkcyByb2J1c3RuZXNzIGJ5IGFsbG93aW5nIG1vcmUgc2hpZnRzXG4vLyB0aGFuIE1hcnNhZ2xpYSdzIG9yaWdpbmFsIHRocmVlLiAgSXQgaXMgYSA3LXNoaWZ0IGdlbmVyYXRvclxuLy8gd2l0aCAyNTYgYml0cywgdGhhdCBwYXNzZXMgQmlnQ3J1c2ggd2l0aCBubyBzeXN0bWF0aWMgZmFpbHVyZXMuXG4vLyBQZXJpb2QgMl4yNTYtMS5cbi8vIE5vIHN5c3RlbWF0aWMgQmlnQ3J1c2ggZmFpbHVyZXMgcmVwb3J0ZWQuXG52YXIgeG9yc2hpZnQ3ID0gcmVxdWlyZSgnLi9saWIveG9yc2hpZnQ3Jyk7XG5cbi8vIHhvcjQwOTYsIGJ5IFJpY2hhcmQgQnJlbnQsIGlzIGEgNDA5Ni1iaXQgeG9yLXNoaWZ0IHdpdGggYVxuLy8gdmVyeSBsb25nIHBlcmlvZCB0aGF0IGFsc28gYWRkcyBhIFdleWwgZ2VuZXJhdG9yLiBJdCBhbHNvIHBhc3Nlc1xuLy8gQmlnQ3J1c2ggd2l0aCBubyBzeXN0ZW1hdGljIGZhaWx1cmVzLiAgSXRzIGxvbmcgcGVyaW9kIG1heVxuLy8gYmUgdXNlZnVsIGlmIHlvdSBoYXZlIG1hbnkgZ2VuZXJhdG9ycyBhbmQgbmVlZCB0byBhdm9pZFxuLy8gY29sbGlzaW9ucy5cbi8vIFBlcmlvZDogMl40MTI4LTJeMzIuXG4vLyBObyBzeXN0ZW1hdGljIEJpZ0NydXNoIGZhaWx1cmVzIHJlcG9ydGVkLlxudmFyIHhvcjQwOTYgPSByZXF1aXJlKCcuL2xpYi94b3I0MDk2Jyk7XG5cbi8vIFR5Y2hlLWksIGJ5IFNhbXVlbCBOZXZlcyBhbmQgRmlsaXBlIEFyYXVqbywgaXMgYSBiaXQtc2hpZnRpbmcgcmFuZG9tXG4vLyBudW1iZXIgZ2VuZXJhdG9yIGRlcml2ZWQgZnJvbSBDaGFDaGEsIGEgbW9kZXJuIHN0cmVhbSBjaXBoZXIuXG4vLyBodHRwczovL2VkZW4uZGVpLnVjLnB0L35zbmV2ZXMvcHVicy8yMDExLXNuZmEyLnBkZlxuLy8gUGVyaW9kOiB+Ml4xMjdcbi8vIE5vIHN5c3RlbWF0aWMgQmlnQ3J1c2ggZmFpbHVyZXMgcmVwb3J0ZWQuXG52YXIgdHljaGVpID0gcmVxdWlyZSgnLi9saWIvdHljaGVpJyk7XG5cbi8vIFRoZSBvcmlnaW5hbCBBUkM0LWJhc2VkIHBybmcgaW5jbHVkZWQgaW4gdGhpcyBsaWJyYXJ5LlxuLy8gUGVyaW9kOiB+Ml4xNjAwXG52YXIgc3IgPSByZXF1aXJlKCcuL3NlZWRyYW5kb20nKTtcblxuc3IuYWxlYSA9IGFsZWE7XG5zci54b3IxMjggPSB4b3IxMjg7XG5zci54b3J3b3cgPSB4b3J3b3c7XG5zci54b3JzaGlmdDcgPSB4b3JzaGlmdDc7XG5zci54b3I0MDk2ID0geG9yNDA5NjtcbnNyLnR5Y2hlaSA9IHR5Y2hlaTtcblxubW9kdWxlLmV4cG9ydHMgPSBzcjtcbiIsIi8vIEEgcG9ydCBvZiBhbiBhbGdvcml0aG0gYnkgSm9oYW5uZXMgQmFhZ8O4ZSA8YmFhZ29lQGJhYWdvZS5jb20+LCAyMDEwXG4vLyBodHRwOi8vYmFhZ29lLmNvbS9lbi9SYW5kb21NdXNpbmdzL2phdmFzY3JpcHQvXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbnF1aW5sYW4vYmV0dGVyLXJhbmRvbS1udW1iZXJzLWZvci1qYXZhc2NyaXB0LW1pcnJvclxuLy8gT3JpZ2luYWwgd29yayBpcyB1bmRlciBNSVQgbGljZW5zZSAtXG5cbi8vIENvcHlyaWdodCAoQykgMjAxMCBieSBKb2hhbm5lcyBCYWFnw7hlIDxiYWFnb2VAYmFhZ29lLm9yZz5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5cblxuKGZ1bmN0aW9uKGdsb2JhbCwgbW9kdWxlLCBkZWZpbmUpIHtcblxuZnVuY3Rpb24gQWxlYShzZWVkKSB7XG4gIHZhciBtZSA9IHRoaXMsIG1hc2ggPSBNYXNoKCk7XG5cbiAgbWUubmV4dCA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciB0ID0gMjA5MTYzOSAqIG1lLnMwICsgbWUuYyAqIDIuMzI4MzA2NDM2NTM4Njk2M2UtMTA7IC8vIDJeLTMyXG4gICAgbWUuczAgPSBtZS5zMTtcbiAgICBtZS5zMSA9IG1lLnMyO1xuICAgIHJldHVybiBtZS5zMiA9IHQgLSAobWUuYyA9IHQgfCAwKTtcbiAgfTtcblxuICAvLyBBcHBseSB0aGUgc2VlZGluZyBhbGdvcml0aG0gZnJvbSBCYWFnb2UuXG4gIG1lLmMgPSAxO1xuICBtZS5zMCA9IG1hc2goJyAnKTtcbiAgbWUuczEgPSBtYXNoKCcgJyk7XG4gIG1lLnMyID0gbWFzaCgnICcpO1xuICBtZS5zMCAtPSBtYXNoKHNlZWQpO1xuICBpZiAobWUuczAgPCAwKSB7IG1lLnMwICs9IDE7IH1cbiAgbWUuczEgLT0gbWFzaChzZWVkKTtcbiAgaWYgKG1lLnMxIDwgMCkgeyBtZS5zMSArPSAxOyB9XG4gIG1lLnMyIC09IG1hc2goc2VlZCk7XG4gIGlmIChtZS5zMiA8IDApIHsgbWUuczIgKz0gMTsgfVxuICBtYXNoID0gbnVsbDtcbn1cblxuZnVuY3Rpb24gY29weShmLCB0KSB7XG4gIHQuYyA9IGYuYztcbiAgdC5zMCA9IGYuczA7XG4gIHQuczEgPSBmLnMxO1xuICB0LnMyID0gZi5zMjtcbiAgcmV0dXJuIHQ7XG59XG5cbmZ1bmN0aW9uIGltcGwoc2VlZCwgb3B0cykge1xuICB2YXIgeGcgPSBuZXcgQWxlYShzZWVkKSxcbiAgICAgIHN0YXRlID0gb3B0cyAmJiBvcHRzLnN0YXRlLFxuICAgICAgcHJuZyA9IHhnLm5leHQ7XG4gIHBybmcuaW50MzIgPSBmdW5jdGlvbigpIHsgcmV0dXJuICh4Zy5uZXh0KCkgKiAweDEwMDAwMDAwMCkgfCAwOyB9XG4gIHBybmcuZG91YmxlID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIHBybmcoKSArIChwcm5nKCkgKiAweDIwMDAwMCB8IDApICogMS4xMTAyMjMwMjQ2MjUxNTY1ZS0xNjsgLy8gMl4tNTNcbiAgfTtcbiAgcHJuZy5xdWljayA9IHBybmc7XG4gIGlmIChzdGF0ZSkge1xuICAgIGlmICh0eXBlb2Yoc3RhdGUpID09ICdvYmplY3QnKSBjb3B5KHN0YXRlLCB4Zyk7XG4gICAgcHJuZy5zdGF0ZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gY29weSh4Zywge30pOyB9XG4gIH1cbiAgcmV0dXJuIHBybmc7XG59XG5cbmZ1bmN0aW9uIE1hc2goKSB7XG4gIHZhciBuID0gMHhlZmM4MjQ5ZDtcblxuICB2YXIgbWFzaCA9IGZ1bmN0aW9uKGRhdGEpIHtcbiAgICBkYXRhID0gU3RyaW5nKGRhdGEpO1xuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZGF0YS5sZW5ndGg7IGkrKykge1xuICAgICAgbiArPSBkYXRhLmNoYXJDb2RlQXQoaSk7XG4gICAgICB2YXIgaCA9IDAuMDI1MTk2MDMyODI0MTY5MzggKiBuO1xuICAgICAgbiA9IGggPj4+IDA7XG4gICAgICBoIC09IG47XG4gICAgICBoICo9IG47XG4gICAgICBuID0gaCA+Pj4gMDtcbiAgICAgIGggLT0gbjtcbiAgICAgIG4gKz0gaCAqIDB4MTAwMDAwMDAwOyAvLyAyXjMyXG4gICAgfVxuICAgIHJldHVybiAobiA+Pj4gMCkgKiAyLjMyODMwNjQzNjUzODY5NjNlLTEwOyAvLyAyXi0zMlxuICB9O1xuXG4gIHJldHVybiBtYXNoO1xufVxuXG5cbmlmIChtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSBpbXBsO1xufSBlbHNlIGlmIChkZWZpbmUgJiYgZGVmaW5lLmFtZCkge1xuICBkZWZpbmUoZnVuY3Rpb24oKSB7IHJldHVybiBpbXBsOyB9KTtcbn0gZWxzZSB7XG4gIHRoaXMuYWxlYSA9IGltcGw7XG59XG5cbn0pKFxuICB0aGlzLFxuICAodHlwZW9mIG1vZHVsZSkgPT0gJ29iamVjdCcgJiYgbW9kdWxlLCAgICAvLyBwcmVzZW50IGluIG5vZGUuanNcbiAgKHR5cGVvZiBkZWZpbmUpID09ICdmdW5jdGlvbicgJiYgZGVmaW5lICAgLy8gcHJlc2VudCB3aXRoIGFuIEFNRCBsb2FkZXJcbik7XG5cblxuIiwiLy8gQSBKYXZhc2NyaXB0IGltcGxlbWVudGFpb24gb2YgdGhlIFwiVHljaGUtaVwiIHBybmcgYWxnb3JpdGhtIGJ5XG4vLyBTYW11ZWwgTmV2ZXMgYW5kIEZpbGlwZSBBcmF1am8uXG4vLyBTZWUgaHR0cHM6Ly9lZGVuLmRlaS51Yy5wdC9+c25ldmVzL3B1YnMvMjAxMS1zbmZhMi5wZGZcblxuKGZ1bmN0aW9uKGdsb2JhbCwgbW9kdWxlLCBkZWZpbmUpIHtcblxuZnVuY3Rpb24gWG9yR2VuKHNlZWQpIHtcbiAgdmFyIG1lID0gdGhpcywgc3Ryc2VlZCA9ICcnO1xuXG4gIC8vIFNldCB1cCBnZW5lcmF0b3IgZnVuY3Rpb24uXG4gIG1lLm5leHQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgYiA9IG1lLmIsIGMgPSBtZS5jLCBkID0gbWUuZCwgYSA9IG1lLmE7XG4gICAgYiA9IChiIDw8IDI1KSBeIChiID4+PiA3KSBeIGM7XG4gICAgYyA9IChjIC0gZCkgfCAwO1xuICAgIGQgPSAoZCA8PCAyNCkgXiAoZCA+Pj4gOCkgXiBhO1xuICAgIGEgPSAoYSAtIGIpIHwgMDtcbiAgICBtZS5iID0gYiA9IChiIDw8IDIwKSBeIChiID4+PiAxMikgXiBjO1xuICAgIG1lLmMgPSBjID0gKGMgLSBkKSB8IDA7XG4gICAgbWUuZCA9IChkIDw8IDE2KSBeIChjID4+PiAxNikgXiBhO1xuICAgIHJldHVybiBtZS5hID0gKGEgLSBiKSB8IDA7XG4gIH07XG5cbiAgLyogVGhlIGZvbGxvd2luZyBpcyBub24taW52ZXJ0ZWQgdHljaGUsIHdoaWNoIGhhcyBiZXR0ZXIgaW50ZXJuYWxcbiAgICogYml0IGRpZmZ1c2lvbiwgYnV0IHdoaWNoIGlzIGFib3V0IDI1JSBzbG93ZXIgdGhhbiB0eWNoZS1pIGluIEpTLlxuICBtZS5uZXh0ID0gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGEgPSBtZS5hLCBiID0gbWUuYiwgYyA9IG1lLmMsIGQgPSBtZS5kO1xuICAgIGEgPSAobWUuYSArIG1lLmIgfCAwKSA+Pj4gMDtcbiAgICBkID0gbWUuZCBeIGE7IGQgPSBkIDw8IDE2IF4gZCA+Pj4gMTY7XG4gICAgYyA9IG1lLmMgKyBkIHwgMDtcbiAgICBiID0gbWUuYiBeIGM7IGIgPSBiIDw8IDEyIF4gZCA+Pj4gMjA7XG4gICAgbWUuYSA9IGEgPSBhICsgYiB8IDA7XG4gICAgZCA9IGQgXiBhOyBtZS5kID0gZCA9IGQgPDwgOCBeIGQgPj4+IDI0O1xuICAgIG1lLmMgPSBjID0gYyArIGQgfCAwO1xuICAgIGIgPSBiIF4gYztcbiAgICByZXR1cm4gbWUuYiA9IChiIDw8IDcgXiBiID4+PiAyNSk7XG4gIH1cbiAgKi9cblxuICBtZS5hID0gMDtcbiAgbWUuYiA9IDA7XG4gIG1lLmMgPSAyNjU0NDM1NzY5IHwgMDtcbiAgbWUuZCA9IDEzNjcxMzA1NTE7XG5cbiAgaWYgKHNlZWQgPT09IE1hdGguZmxvb3Ioc2VlZCkpIHtcbiAgICAvLyBJbnRlZ2VyIHNlZWQuXG4gICAgbWUuYSA9IChzZWVkIC8gMHgxMDAwMDAwMDApIHwgMDtcbiAgICBtZS5iID0gc2VlZCB8IDA7XG4gIH0gZWxzZSB7XG4gICAgLy8gU3RyaW5nIHNlZWQuXG4gICAgc3Ryc2VlZCArPSBzZWVkO1xuICB9XG5cbiAgLy8gTWl4IGluIHN0cmluZyBzZWVkLCB0aGVuIGRpc2NhcmQgYW4gaW5pdGlhbCBiYXRjaCBvZiA2NCB2YWx1ZXMuXG4gIGZvciAodmFyIGsgPSAwOyBrIDwgc3Ryc2VlZC5sZW5ndGggKyAyMDsgaysrKSB7XG4gICAgbWUuYiBePSBzdHJzZWVkLmNoYXJDb2RlQXQoaykgfCAwO1xuICAgIG1lLm5leHQoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb3B5KGYsIHQpIHtcbiAgdC5hID0gZi5hO1xuICB0LmIgPSBmLmI7XG4gIHQuYyA9IGYuYztcbiAgdC5kID0gZi5kO1xuICByZXR1cm4gdDtcbn07XG5cbmZ1bmN0aW9uIGltcGwoc2VlZCwgb3B0cykge1xuICB2YXIgeGcgPSBuZXcgWG9yR2VuKHNlZWQpLFxuICAgICAgc3RhdGUgPSBvcHRzICYmIG9wdHMuc3RhdGUsXG4gICAgICBwcm5nID0gZnVuY3Rpb24oKSB7IHJldHVybiAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwOyB9O1xuICBwcm5nLmRvdWJsZSA9IGZ1bmN0aW9uKCkge1xuICAgIGRvIHtcbiAgICAgIHZhciB0b3AgPSB4Zy5uZXh0KCkgPj4+IDExLFxuICAgICAgICAgIGJvdCA9ICh4Zy5uZXh0KCkgPj4+IDApIC8gMHgxMDAwMDAwMDAsXG4gICAgICAgICAgcmVzdWx0ID0gKHRvcCArIGJvdCkgLyAoMSA8PCAyMSk7XG4gICAgfSB3aGlsZSAocmVzdWx0ID09PSAwKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xuICBwcm5nLmludDMyID0geGcubmV4dDtcbiAgcHJuZy5xdWljayA9IHBybmc7XG4gIGlmIChzdGF0ZSkge1xuICAgIGlmICh0eXBlb2Yoc3RhdGUpID09ICdvYmplY3QnKSBjb3B5KHN0YXRlLCB4Zyk7XG4gICAgcHJuZy5zdGF0ZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gY29weSh4Zywge30pOyB9XG4gIH1cbiAgcmV0dXJuIHBybmc7XG59XG5cbmlmIChtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSBpbXBsO1xufSBlbHNlIGlmIChkZWZpbmUgJiYgZGVmaW5lLmFtZCkge1xuICBkZWZpbmUoZnVuY3Rpb24oKSB7IHJldHVybiBpbXBsOyB9KTtcbn0gZWxzZSB7XG4gIHRoaXMudHljaGVpID0gaW1wbDtcbn1cblxufSkoXG4gIHRoaXMsXG4gICh0eXBlb2YgbW9kdWxlKSA9PSAnb2JqZWN0JyAmJiBtb2R1bGUsICAgIC8vIHByZXNlbnQgaW4gbm9kZS5qc1xuICAodHlwZW9mIGRlZmluZSkgPT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUgICAvLyBwcmVzZW50IHdpdGggYW4gQU1EIGxvYWRlclxuKTtcblxuXG4iLCIvLyBBIEphdmFzY3JpcHQgaW1wbGVtZW50YWlvbiBvZiB0aGUgXCJ4b3IxMjhcIiBwcm5nIGFsZ29yaXRobSBieVxuLy8gR2VvcmdlIE1hcnNhZ2xpYS4gIFNlZSBodHRwOi8vd3d3LmpzdGF0c29mdC5vcmcvdjA4L2kxNC9wYXBlclxuXG4oZnVuY3Rpb24oZ2xvYmFsLCBtb2R1bGUsIGRlZmluZSkge1xuXG5mdW5jdGlvbiBYb3JHZW4oc2VlZCkge1xuICB2YXIgbWUgPSB0aGlzLCBzdHJzZWVkID0gJyc7XG5cbiAgbWUueCA9IDA7XG4gIG1lLnkgPSAwO1xuICBtZS56ID0gMDtcbiAgbWUudyA9IDA7XG5cbiAgLy8gU2V0IHVwIGdlbmVyYXRvciBmdW5jdGlvbi5cbiAgbWUubmV4dCA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciB0ID0gbWUueCBeIChtZS54IDw8IDExKTtcbiAgICBtZS54ID0gbWUueTtcbiAgICBtZS55ID0gbWUuejtcbiAgICBtZS56ID0gbWUudztcbiAgICByZXR1cm4gbWUudyBePSAobWUudyA+Pj4gMTkpIF4gdCBeICh0ID4+PiA4KTtcbiAgfTtcblxuICBpZiAoc2VlZCA9PT0gKHNlZWQgfCAwKSkge1xuICAgIC8vIEludGVnZXIgc2VlZC5cbiAgICBtZS54ID0gc2VlZDtcbiAgfSBlbHNlIHtcbiAgICAvLyBTdHJpbmcgc2VlZC5cbiAgICBzdHJzZWVkICs9IHNlZWQ7XG4gIH1cblxuICAvLyBNaXggaW4gc3RyaW5nIHNlZWQsIHRoZW4gZGlzY2FyZCBhbiBpbml0aWFsIGJhdGNoIG9mIDY0IHZhbHVlcy5cbiAgZm9yICh2YXIgayA9IDA7IGsgPCBzdHJzZWVkLmxlbmd0aCArIDY0OyBrKyspIHtcbiAgICBtZS54IF49IHN0cnNlZWQuY2hhckNvZGVBdChrKSB8IDA7XG4gICAgbWUubmV4dCgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNvcHkoZiwgdCkge1xuICB0LnggPSBmLng7XG4gIHQueSA9IGYueTtcbiAgdC56ID0gZi56O1xuICB0LncgPSBmLnc7XG4gIHJldHVybiB0O1xufVxuXG5mdW5jdGlvbiBpbXBsKHNlZWQsIG9wdHMpIHtcbiAgdmFyIHhnID0gbmV3IFhvckdlbihzZWVkKSxcbiAgICAgIHN0YXRlID0gb3B0cyAmJiBvcHRzLnN0YXRlLFxuICAgICAgcHJuZyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMDsgfTtcbiAgcHJuZy5kb3VibGUgPSBmdW5jdGlvbigpIHtcbiAgICBkbyB7XG4gICAgICB2YXIgdG9wID0geGcubmV4dCgpID4+PiAxMSxcbiAgICAgICAgICBib3QgPSAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwLFxuICAgICAgICAgIHJlc3VsdCA9ICh0b3AgKyBib3QpIC8gKDEgPDwgMjEpO1xuICAgIH0gd2hpbGUgKHJlc3VsdCA9PT0gMCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbiAgcHJuZy5pbnQzMiA9IHhnLm5leHQ7XG4gIHBybmcucXVpY2sgPSBwcm5nO1xuICBpZiAoc3RhdGUpIHtcbiAgICBpZiAodHlwZW9mKHN0YXRlKSA9PSAnb2JqZWN0JykgY29weShzdGF0ZSwgeGcpO1xuICAgIHBybmcuc3RhdGUgPSBmdW5jdGlvbigpIHsgcmV0dXJuIGNvcHkoeGcsIHt9KTsgfVxuICB9XG4gIHJldHVybiBwcm5nO1xufVxuXG5pZiAobW9kdWxlICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gaW1wbDtcbn0gZWxzZSBpZiAoZGVmaW5lICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKGZ1bmN0aW9uKCkgeyByZXR1cm4gaW1wbDsgfSk7XG59IGVsc2Uge1xuICB0aGlzLnhvcjEyOCA9IGltcGw7XG59XG5cbn0pKFxuICB0aGlzLFxuICAodHlwZW9mIG1vZHVsZSkgPT0gJ29iamVjdCcgJiYgbW9kdWxlLCAgICAvLyBwcmVzZW50IGluIG5vZGUuanNcbiAgKHR5cGVvZiBkZWZpbmUpID09ICdmdW5jdGlvbicgJiYgZGVmaW5lICAgLy8gcHJlc2VudCB3aXRoIGFuIEFNRCBsb2FkZXJcbik7XG5cblxuIiwiLy8gQSBKYXZhc2NyaXB0IGltcGxlbWVudGFpb24gb2YgUmljaGFyZCBCcmVudCdzIFhvcmdlbnMgeG9yNDA5NiBhbGdvcml0aG0uXG4vL1xuLy8gVGhpcyBmYXN0IG5vbi1jcnlwdG9ncmFwaGljIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yIGlzIGRlc2lnbmVkIGZvclxuLy8gdXNlIGluIE1vbnRlLUNhcmxvIGFsZ29yaXRobXMuIEl0IGNvbWJpbmVzIGEgbG9uZy1wZXJpb2QgeG9yc2hpZnRcbi8vIGdlbmVyYXRvciB3aXRoIGEgV2V5bCBnZW5lcmF0b3IsIGFuZCBpdCBwYXNzZXMgYWxsIGNvbW1vbiBiYXR0ZXJpZXNcbi8vIG9mIHN0YXN0aWNpYWwgdGVzdHMgZm9yIHJhbmRvbW5lc3Mgd2hpbGUgY29uc3VtaW5nIG9ubHkgYSBmZXcgbmFub3NlY29uZHNcbi8vIGZvciBlYWNoIHBybmcgZ2VuZXJhdGVkLiAgRm9yIGJhY2tncm91bmQgb24gdGhlIGdlbmVyYXRvciwgc2VlIEJyZW50J3Ncbi8vIHBhcGVyOiBcIlNvbWUgbG9uZy1wZXJpb2QgcmFuZG9tIG51bWJlciBnZW5lcmF0b3JzIHVzaW5nIHNoaWZ0cyBhbmQgeG9ycy5cIlxuLy8gaHR0cDovL2FyeGl2Lm9yZy9wZGYvMTAwNC4zMTE1djEucGRmXG4vL1xuLy8gVXNhZ2U6XG4vL1xuLy8gdmFyIHhvcjQwOTYgPSByZXF1aXJlKCd4b3I0MDk2Jyk7XG4vLyByYW5kb20gPSB4b3I0MDk2KDEpOyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNlZWQgd2l0aCBpbnQzMiBvciBzdHJpbmcuXG4vLyBhc3NlcnQuZXF1YWwocmFuZG9tKCksIDAuMTUyMDQzNjQ1MDUzODU0Nyk7IC8vICgwLCAxKSByYW5nZSwgNTMgYml0cy5cbi8vIGFzc2VydC5lcXVhbChyYW5kb20uaW50MzIoKSwgMTgwNjUzNDg5Nyk7ICAgLy8gc2lnbmVkIGludDMyLCAzMiBiaXRzLlxuLy9cbi8vIEZvciBub256ZXJvIG51bWVyaWMga2V5cywgdGhpcyBpbXBlbGVtZW50YXRpb24gcHJvdmlkZXMgYSBzZXF1ZW5jZVxuLy8gaWRlbnRpY2FsIHRvIHRoYXQgYnkgQnJlbnQncyB4b3JnZW5zIDMgaW1wbGVtZW50YWlvbiBpbiBDLiAgVGhpc1xuLy8gaW1wbGVtZW50YXRpb24gYWxzbyBwcm92aWRlcyBmb3IgaW5pdGFsaXppbmcgdGhlIGdlbmVyYXRvciB3aXRoXG4vLyBzdHJpbmcgc2VlZHMsIG9yIGZvciBzYXZpbmcgYW5kIHJlc3RvcmluZyB0aGUgc3RhdGUgb2YgdGhlIGdlbmVyYXRvci5cbi8vXG4vLyBPbiBDaHJvbWUsIHRoaXMgcHJuZyBiZW5jaG1hcmtzIGFib3V0IDIuMSB0aW1lcyBzbG93ZXIgdGhhblxuLy8gSmF2YXNjcmlwdCdzIGJ1aWx0LWluIE1hdGgucmFuZG9tKCkuXG5cbihmdW5jdGlvbihnbG9iYWwsIG1vZHVsZSwgZGVmaW5lKSB7XG5cbmZ1bmN0aW9uIFhvckdlbihzZWVkKSB7XG4gIHZhciBtZSA9IHRoaXM7XG5cbiAgLy8gU2V0IHVwIGdlbmVyYXRvciBmdW5jdGlvbi5cbiAgbWUubmV4dCA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciB3ID0gbWUudyxcbiAgICAgICAgWCA9IG1lLlgsIGkgPSBtZS5pLCB0LCB2O1xuICAgIC8vIFVwZGF0ZSBXZXlsIGdlbmVyYXRvci5cbiAgICBtZS53ID0gdyA9ICh3ICsgMHg2MWM4ODY0NykgfCAwO1xuICAgIC8vIFVwZGF0ZSB4b3IgZ2VuZXJhdG9yLlxuICAgIHYgPSBYWyhpICsgMzQpICYgMTI3XTtcbiAgICB0ID0gWFtpID0gKChpICsgMSkgJiAxMjcpXTtcbiAgICB2IF49IHYgPDwgMTM7XG4gICAgdCBePSB0IDw8IDE3O1xuICAgIHYgXj0gdiA+Pj4gMTU7XG4gICAgdCBePSB0ID4+PiAxMjtcbiAgICAvLyBVcGRhdGUgWG9yIGdlbmVyYXRvciBhcnJheSBzdGF0ZS5cbiAgICB2ID0gWFtpXSA9IHYgXiB0O1xuICAgIG1lLmkgPSBpO1xuICAgIC8vIFJlc3VsdCBpcyB0aGUgY29tYmluYXRpb24uXG4gICAgcmV0dXJuICh2ICsgKHcgXiAodyA+Pj4gMTYpKSkgfCAwO1xuICB9O1xuXG4gIGZ1bmN0aW9uIGluaXQobWUsIHNlZWQpIHtcbiAgICB2YXIgdCwgdiwgaSwgaiwgdywgWCA9IFtdLCBsaW1pdCA9IDEyODtcbiAgICBpZiAoc2VlZCA9PT0gKHNlZWQgfCAwKSkge1xuICAgICAgLy8gTnVtZXJpYyBzZWVkcyBpbml0aWFsaXplIHYsIHdoaWNoIGlzIHVzZWQgdG8gZ2VuZXJhdGVzIFguXG4gICAgICB2ID0gc2VlZDtcbiAgICAgIHNlZWQgPSBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTdHJpbmcgc2VlZHMgYXJlIG1peGVkIGludG8gdiBhbmQgWCBvbmUgY2hhcmFjdGVyIGF0IGEgdGltZS5cbiAgICAgIHNlZWQgPSBzZWVkICsgJ1xcMCc7XG4gICAgICB2ID0gMDtcbiAgICAgIGxpbWl0ID0gTWF0aC5tYXgobGltaXQsIHNlZWQubGVuZ3RoKTtcbiAgICB9XG4gICAgLy8gSW5pdGlhbGl6ZSBjaXJjdWxhciBhcnJheSBhbmQgd2V5bCB2YWx1ZS5cbiAgICBmb3IgKGkgPSAwLCBqID0gLTMyOyBqIDwgbGltaXQ7ICsraikge1xuICAgICAgLy8gUHV0IHRoZSB1bmljb2RlIGNoYXJhY3RlcnMgaW50byB0aGUgYXJyYXksIGFuZCBzaHVmZmxlIHRoZW0uXG4gICAgICBpZiAoc2VlZCkgdiBePSBzZWVkLmNoYXJDb2RlQXQoKGogKyAzMikgJSBzZWVkLmxlbmd0aCk7XG4gICAgICAvLyBBZnRlciAzMiBzaHVmZmxlcywgdGFrZSB2IGFzIHRoZSBzdGFydGluZyB3IHZhbHVlLlxuICAgICAgaWYgKGogPT09IDApIHcgPSB2O1xuICAgICAgdiBePSB2IDw8IDEwO1xuICAgICAgdiBePSB2ID4+PiAxNTtcbiAgICAgIHYgXj0gdiA8PCA0O1xuICAgICAgdiBePSB2ID4+PiAxMztcbiAgICAgIGlmIChqID49IDApIHtcbiAgICAgICAgdyA9ICh3ICsgMHg2MWM4ODY0NykgfCAwOyAgICAgLy8gV2V5bC5cbiAgICAgICAgdCA9IChYW2ogJiAxMjddIF49ICh2ICsgdykpOyAgLy8gQ29tYmluZSB4b3IgYW5kIHdleWwgdG8gaW5pdCBhcnJheS5cbiAgICAgICAgaSA9ICgwID09IHQpID8gaSArIDEgOiAwOyAgICAgLy8gQ291bnQgemVyb2VzLlxuICAgICAgfVxuICAgIH1cbiAgICAvLyBXZSBoYXZlIGRldGVjdGVkIGFsbCB6ZXJvZXM7IG1ha2UgdGhlIGtleSBub256ZXJvLlxuICAgIGlmIChpID49IDEyOCkge1xuICAgICAgWFsoc2VlZCAmJiBzZWVkLmxlbmd0aCB8fCAwKSAmIDEyN10gPSAtMTtcbiAgICB9XG4gICAgLy8gUnVuIHRoZSBnZW5lcmF0b3IgNTEyIHRpbWVzIHRvIGZ1cnRoZXIgbWl4IHRoZSBzdGF0ZSBiZWZvcmUgdXNpbmcgaXQuXG4gICAgLy8gRmFjdG9yaW5nIHRoaXMgYXMgYSBmdW5jdGlvbiBzbG93cyB0aGUgbWFpbiBnZW5lcmF0b3IsIHNvIGl0IGlzIGp1c3RcbiAgICAvLyB1bnJvbGxlZCBoZXJlLiAgVGhlIHdleWwgZ2VuZXJhdG9yIGlzIG5vdCBhZHZhbmNlZCB3aGlsZSB3YXJtaW5nIHVwLlxuICAgIGkgPSAxMjc7XG4gICAgZm9yIChqID0gNCAqIDEyODsgaiA+IDA7IC0taikge1xuICAgICAgdiA9IFhbKGkgKyAzNCkgJiAxMjddO1xuICAgICAgdCA9IFhbaSA9ICgoaSArIDEpICYgMTI3KV07XG4gICAgICB2IF49IHYgPDwgMTM7XG4gICAgICB0IF49IHQgPDwgMTc7XG4gICAgICB2IF49IHYgPj4+IDE1O1xuICAgICAgdCBePSB0ID4+PiAxMjtcbiAgICAgIFhbaV0gPSB2IF4gdDtcbiAgICB9XG4gICAgLy8gU3RvcmluZyBzdGF0ZSBhcyBvYmplY3QgbWVtYmVycyBpcyBmYXN0ZXIgdGhhbiB1c2luZyBjbG9zdXJlIHZhcmlhYmxlcy5cbiAgICBtZS53ID0gdztcbiAgICBtZS5YID0gWDtcbiAgICBtZS5pID0gaTtcbiAgfVxuXG4gIGluaXQobWUsIHNlZWQpO1xufVxuXG5mdW5jdGlvbiBjb3B5KGYsIHQpIHtcbiAgdC5pID0gZi5pO1xuICB0LncgPSBmLnc7XG4gIHQuWCA9IGYuWC5zbGljZSgpO1xuICByZXR1cm4gdDtcbn07XG5cbmZ1bmN0aW9uIGltcGwoc2VlZCwgb3B0cykge1xuICBpZiAoc2VlZCA9PSBudWxsKSBzZWVkID0gKyhuZXcgRGF0ZSk7XG4gIHZhciB4ZyA9IG5ldyBYb3JHZW4oc2VlZCksXG4gICAgICBzdGF0ZSA9IG9wdHMgJiYgb3B0cy5zdGF0ZSxcbiAgICAgIHBybmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuICh4Zy5uZXh0KCkgPj4+IDApIC8gMHgxMDAwMDAwMDA7IH07XG4gIHBybmcuZG91YmxlID0gZnVuY3Rpb24oKSB7XG4gICAgZG8ge1xuICAgICAgdmFyIHRvcCA9IHhnLm5leHQoKSA+Pj4gMTEsXG4gICAgICAgICAgYm90ID0gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMCxcbiAgICAgICAgICByZXN1bHQgPSAodG9wICsgYm90KSAvICgxIDw8IDIxKTtcbiAgICB9IHdoaWxlIChyZXN1bHQgPT09IDApO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG4gIHBybmcuaW50MzIgPSB4Zy5uZXh0O1xuICBwcm5nLnF1aWNrID0gcHJuZztcbiAgaWYgKHN0YXRlKSB7XG4gICAgaWYgKHN0YXRlLlgpIGNvcHkoc3RhdGUsIHhnKTtcbiAgICBwcm5nLnN0YXRlID0gZnVuY3Rpb24oKSB7IHJldHVybiBjb3B5KHhnLCB7fSk7IH1cbiAgfVxuICByZXR1cm4gcHJuZztcbn1cblxuaWYgKG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cykge1xuICBtb2R1bGUuZXhwb3J0cyA9IGltcGw7XG59IGVsc2UgaWYgKGRlZmluZSAmJiBkZWZpbmUuYW1kKSB7XG4gIGRlZmluZShmdW5jdGlvbigpIHsgcmV0dXJuIGltcGw7IH0pO1xufSBlbHNlIHtcbiAgdGhpcy54b3I0MDk2ID0gaW1wbDtcbn1cblxufSkoXG4gIHRoaXMsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHdpbmRvdyBvYmplY3Qgb3IgZ2xvYmFsXG4gICh0eXBlb2YgbW9kdWxlKSA9PSAnb2JqZWN0JyAmJiBtb2R1bGUsICAgIC8vIHByZXNlbnQgaW4gbm9kZS5qc1xuICAodHlwZW9mIGRlZmluZSkgPT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUgICAvLyBwcmVzZW50IHdpdGggYW4gQU1EIGxvYWRlclxuKTtcbiIsIi8vIEEgSmF2YXNjcmlwdCBpbXBsZW1lbnRhaW9uIG9mIHRoZSBcInhvcnNoaWZ0N1wiIGFsZ29yaXRobSBieVxuLy8gRnJhbsOnb2lzIFBhbm5ldG9uIGFuZCBQaWVycmUgTCdlY3V5ZXI6XG4vLyBcIk9uIHRoZSBYb3Jnc2hpZnQgUmFuZG9tIE51bWJlciBHZW5lcmF0b3JzXCJcbi8vIGh0dHA6Ly9zYWx1Yy5lbmdyLnVjb25uLmVkdS9yZWZzL2NyeXB0by9ybmcvcGFubmV0b24wNW9udGhleG9yc2hpZnQucGRmXG5cbihmdW5jdGlvbihnbG9iYWwsIG1vZHVsZSwgZGVmaW5lKSB7XG5cbmZ1bmN0aW9uIFhvckdlbihzZWVkKSB7XG4gIHZhciBtZSA9IHRoaXM7XG5cbiAgLy8gU2V0IHVwIGdlbmVyYXRvciBmdW5jdGlvbi5cbiAgbWUubmV4dCA9IGZ1bmN0aW9uKCkge1xuICAgIC8vIFVwZGF0ZSB4b3IgZ2VuZXJhdG9yLlxuICAgIHZhciBYID0gbWUueCwgaSA9IG1lLmksIHQsIHYsIHc7XG4gICAgdCA9IFhbaV07IHQgXj0gKHQgPj4+IDcpOyB2ID0gdCBeICh0IDw8IDI0KTtcbiAgICB0ID0gWFsoaSArIDEpICYgN107IHYgXj0gdCBeICh0ID4+PiAxMCk7XG4gICAgdCA9IFhbKGkgKyAzKSAmIDddOyB2IF49IHQgXiAodCA+Pj4gMyk7XG4gICAgdCA9IFhbKGkgKyA0KSAmIDddOyB2IF49IHQgXiAodCA8PCA3KTtcbiAgICB0ID0gWFsoaSArIDcpICYgN107IHQgPSB0IF4gKHQgPDwgMTMpOyB2IF49IHQgXiAodCA8PCA5KTtcbiAgICBYW2ldID0gdjtcbiAgICBtZS5pID0gKGkgKyAxKSAmIDc7XG4gICAgcmV0dXJuIHY7XG4gIH07XG5cbiAgZnVuY3Rpb24gaW5pdChtZSwgc2VlZCkge1xuICAgIHZhciBqLCB3LCBYID0gW107XG5cbiAgICBpZiAoc2VlZCA9PT0gKHNlZWQgfCAwKSkge1xuICAgICAgLy8gU2VlZCBzdGF0ZSBhcnJheSB1c2luZyBhIDMyLWJpdCBpbnRlZ2VyLlxuICAgICAgdyA9IFhbMF0gPSBzZWVkO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTZWVkIHN0YXRlIHVzaW5nIGEgc3RyaW5nLlxuICAgICAgc2VlZCA9ICcnICsgc2VlZDtcbiAgICAgIGZvciAoaiA9IDA7IGogPCBzZWVkLmxlbmd0aDsgKytqKSB7XG4gICAgICAgIFhbaiAmIDddID0gKFhbaiAmIDddIDw8IDE1KSBeXG4gICAgICAgICAgICAoc2VlZC5jaGFyQ29kZUF0KGopICsgWFsoaiArIDEpICYgN10gPDwgMTMpO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBFbmZvcmNlIGFuIGFycmF5IGxlbmd0aCBvZiA4LCBub3QgYWxsIHplcm9lcy5cbiAgICB3aGlsZSAoWC5sZW5ndGggPCA4KSBYLnB1c2goMCk7XG4gICAgZm9yIChqID0gMDsgaiA8IDggJiYgWFtqXSA9PT0gMDsgKytqKTtcbiAgICBpZiAoaiA9PSA4KSB3ID0gWFs3XSA9IC0xOyBlbHNlIHcgPSBYW2pdO1xuXG4gICAgbWUueCA9IFg7XG4gICAgbWUuaSA9IDA7XG5cbiAgICAvLyBEaXNjYXJkIGFuIGluaXRpYWwgMjU2IHZhbHVlcy5cbiAgICBmb3IgKGogPSAyNTY7IGogPiAwOyAtLWopIHtcbiAgICAgIG1lLm5leHQoKTtcbiAgICB9XG4gIH1cblxuICBpbml0KG1lLCBzZWVkKTtcbn1cblxuZnVuY3Rpb24gY29weShmLCB0KSB7XG4gIHQueCA9IGYueC5zbGljZSgpO1xuICB0LmkgPSBmLmk7XG4gIHJldHVybiB0O1xufVxuXG5mdW5jdGlvbiBpbXBsKHNlZWQsIG9wdHMpIHtcbiAgaWYgKHNlZWQgPT0gbnVsbCkgc2VlZCA9ICsobmV3IERhdGUpO1xuICB2YXIgeGcgPSBuZXcgWG9yR2VuKHNlZWQpLFxuICAgICAgc3RhdGUgPSBvcHRzICYmIG9wdHMuc3RhdGUsXG4gICAgICBwcm5nID0gZnVuY3Rpb24oKSB7IHJldHVybiAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwOyB9O1xuICBwcm5nLmRvdWJsZSA9IGZ1bmN0aW9uKCkge1xuICAgIGRvIHtcbiAgICAgIHZhciB0b3AgPSB4Zy5uZXh0KCkgPj4+IDExLFxuICAgICAgICAgIGJvdCA9ICh4Zy5uZXh0KCkgPj4+IDApIC8gMHgxMDAwMDAwMDAsXG4gICAgICAgICAgcmVzdWx0ID0gKHRvcCArIGJvdCkgLyAoMSA8PCAyMSk7XG4gICAgfSB3aGlsZSAocmVzdWx0ID09PSAwKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xuICBwcm5nLmludDMyID0geGcubmV4dDtcbiAgcHJuZy5xdWljayA9IHBybmc7XG4gIGlmIChzdGF0ZSkge1xuICAgIGlmIChzdGF0ZS54KSBjb3B5KHN0YXRlLCB4Zyk7XG4gICAgcHJuZy5zdGF0ZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gY29weSh4Zywge30pOyB9XG4gIH1cbiAgcmV0dXJuIHBybmc7XG59XG5cbmlmIChtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSBpbXBsO1xufSBlbHNlIGlmIChkZWZpbmUgJiYgZGVmaW5lLmFtZCkge1xuICBkZWZpbmUoZnVuY3Rpb24oKSB7IHJldHVybiBpbXBsOyB9KTtcbn0gZWxzZSB7XG4gIHRoaXMueG9yc2hpZnQ3ID0gaW1wbDtcbn1cblxufSkoXG4gIHRoaXMsXG4gICh0eXBlb2YgbW9kdWxlKSA9PSAnb2JqZWN0JyAmJiBtb2R1bGUsICAgIC8vIHByZXNlbnQgaW4gbm9kZS5qc1xuICAodHlwZW9mIGRlZmluZSkgPT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUgICAvLyBwcmVzZW50IHdpdGggYW4gQU1EIGxvYWRlclxuKTtcblxuIiwiLy8gQSBKYXZhc2NyaXB0IGltcGxlbWVudGFpb24gb2YgdGhlIFwieG9yd293XCIgcHJuZyBhbGdvcml0aG0gYnlcbi8vIEdlb3JnZSBNYXJzYWdsaWEuICBTZWUgaHR0cDovL3d3dy5qc3RhdHNvZnQub3JnL3YwOC9pMTQvcGFwZXJcblxuKGZ1bmN0aW9uKGdsb2JhbCwgbW9kdWxlLCBkZWZpbmUpIHtcblxuZnVuY3Rpb24gWG9yR2VuKHNlZWQpIHtcbiAgdmFyIG1lID0gdGhpcywgc3Ryc2VlZCA9ICcnO1xuXG4gIC8vIFNldCB1cCBnZW5lcmF0b3IgZnVuY3Rpb24uXG4gIG1lLm5leHQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgdCA9IChtZS54IF4gKG1lLnggPj4+IDIpKTtcbiAgICBtZS54ID0gbWUueTsgbWUueSA9IG1lLno7IG1lLnogPSBtZS53OyBtZS53ID0gbWUudjtcbiAgICByZXR1cm4gKG1lLmQgPSAobWUuZCArIDM2MjQzNyB8IDApKSArXG4gICAgICAgKG1lLnYgPSAobWUudiBeIChtZS52IDw8IDQpKSBeICh0IF4gKHQgPDwgMSkpKSB8IDA7XG4gIH07XG5cbiAgbWUueCA9IDA7XG4gIG1lLnkgPSAwO1xuICBtZS56ID0gMDtcbiAgbWUudyA9IDA7XG4gIG1lLnYgPSAwO1xuXG4gIGlmIChzZWVkID09PSAoc2VlZCB8IDApKSB7XG4gICAgLy8gSW50ZWdlciBzZWVkLlxuICAgIG1lLnggPSBzZWVkO1xuICB9IGVsc2Uge1xuICAgIC8vIFN0cmluZyBzZWVkLlxuICAgIHN0cnNlZWQgKz0gc2VlZDtcbiAgfVxuXG4gIC8vIE1peCBpbiBzdHJpbmcgc2VlZCwgdGhlbiBkaXNjYXJkIGFuIGluaXRpYWwgYmF0Y2ggb2YgNjQgdmFsdWVzLlxuICBmb3IgKHZhciBrID0gMDsgayA8IHN0cnNlZWQubGVuZ3RoICsgNjQ7IGsrKykge1xuICAgIG1lLnggXj0gc3Ryc2VlZC5jaGFyQ29kZUF0KGspIHwgMDtcbiAgICBpZiAoayA9PSBzdHJzZWVkLmxlbmd0aCkge1xuICAgICAgbWUuZCA9IG1lLnggPDwgMTAgXiBtZS54ID4+PiA0O1xuICAgIH1cbiAgICBtZS5uZXh0KCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gY29weShmLCB0KSB7XG4gIHQueCA9IGYueDtcbiAgdC55ID0gZi55O1xuICB0LnogPSBmLno7XG4gIHQudyA9IGYudztcbiAgdC52ID0gZi52O1xuICB0LmQgPSBmLmQ7XG4gIHJldHVybiB0O1xufVxuXG5mdW5jdGlvbiBpbXBsKHNlZWQsIG9wdHMpIHtcbiAgdmFyIHhnID0gbmV3IFhvckdlbihzZWVkKSxcbiAgICAgIHN0YXRlID0gb3B0cyAmJiBvcHRzLnN0YXRlLFxuICAgICAgcHJuZyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMDsgfTtcbiAgcHJuZy5kb3VibGUgPSBmdW5jdGlvbigpIHtcbiAgICBkbyB7XG4gICAgICB2YXIgdG9wID0geGcubmV4dCgpID4+PiAxMSxcbiAgICAgICAgICBib3QgPSAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwLFxuICAgICAgICAgIHJlc3VsdCA9ICh0b3AgKyBib3QpIC8gKDEgPDwgMjEpO1xuICAgIH0gd2hpbGUgKHJlc3VsdCA9PT0gMCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbiAgcHJuZy5pbnQzMiA9IHhnLm5leHQ7XG4gIHBybmcucXVpY2sgPSBwcm5nO1xuICBpZiAoc3RhdGUpIHtcbiAgICBpZiAodHlwZW9mKHN0YXRlKSA9PSAnb2JqZWN0JykgY29weShzdGF0ZSwgeGcpO1xuICAgIHBybmcuc3RhdGUgPSBmdW5jdGlvbigpIHsgcmV0dXJuIGNvcHkoeGcsIHt9KTsgfVxuICB9XG4gIHJldHVybiBwcm5nO1xufVxuXG5pZiAobW9kdWxlICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gaW1wbDtcbn0gZWxzZSBpZiAoZGVmaW5lICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKGZ1bmN0aW9uKCkgeyByZXR1cm4gaW1wbDsgfSk7XG59IGVsc2Uge1xuICB0aGlzLnhvcndvdyA9IGltcGw7XG59XG5cbn0pKFxuICB0aGlzLFxuICAodHlwZW9mIG1vZHVsZSkgPT0gJ29iamVjdCcgJiYgbW9kdWxlLCAgICAvLyBwcmVzZW50IGluIG5vZGUuanNcbiAgKHR5cGVvZiBkZWZpbmUpID09ICdmdW5jdGlvbicgJiYgZGVmaW5lICAgLy8gcHJlc2VudCB3aXRoIGFuIEFNRCBsb2FkZXJcbik7XG5cblxuIiwiLypcbkNvcHlyaWdodCAyMDE5IERhdmlkIEJhdS5cblxuUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nXG5hIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGVcblwiU29mdHdhcmVcIiksIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZ1xud2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLFxuZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvXG5wZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG9cbnRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcblxuVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmVcbmluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELFxuRVhQUkVTUyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GXG5NRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuXG5JTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWVxuQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCxcblRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFXG5TT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS5cblxuKi9cblxuKGZ1bmN0aW9uIChnbG9iYWwsIHBvb2wsIG1hdGgpIHtcbi8vXG4vLyBUaGUgZm9sbG93aW5nIGNvbnN0YW50cyBhcmUgcmVsYXRlZCB0byBJRUVFIDc1NCBsaW1pdHMuXG4vL1xuXG52YXIgd2lkdGggPSAyNTYsICAgICAgICAvLyBlYWNoIFJDNCBvdXRwdXQgaXMgMCA8PSB4IDwgMjU2XG4gICAgY2h1bmtzID0gNiwgICAgICAgICAvLyBhdCBsZWFzdCBzaXggUkM0IG91dHB1dHMgZm9yIGVhY2ggZG91YmxlXG4gICAgZGlnaXRzID0gNTIsICAgICAgICAvLyB0aGVyZSBhcmUgNTIgc2lnbmlmaWNhbnQgZGlnaXRzIGluIGEgZG91YmxlXG4gICAgcm5nbmFtZSA9ICdyYW5kb20nLCAvLyBybmduYW1lOiBuYW1lIGZvciBNYXRoLnJhbmRvbSBhbmQgTWF0aC5zZWVkcmFuZG9tXG4gICAgc3RhcnRkZW5vbSA9IG1hdGgucG93KHdpZHRoLCBjaHVua3MpLFxuICAgIHNpZ25pZmljYW5jZSA9IG1hdGgucG93KDIsIGRpZ2l0cyksXG4gICAgb3ZlcmZsb3cgPSBzaWduaWZpY2FuY2UgKiAyLFxuICAgIG1hc2sgPSB3aWR0aCAtIDEsXG4gICAgbm9kZWNyeXB0bzsgICAgICAgICAvLyBub2RlLmpzIGNyeXB0byBtb2R1bGUsIGluaXRpYWxpemVkIGF0IHRoZSBib3R0b20uXG5cbi8vXG4vLyBzZWVkcmFuZG9tKClcbi8vIFRoaXMgaXMgdGhlIHNlZWRyYW5kb20gZnVuY3Rpb24gZGVzY3JpYmVkIGFib3ZlLlxuLy9cbmZ1bmN0aW9uIHNlZWRyYW5kb20oc2VlZCwgb3B0aW9ucywgY2FsbGJhY2spIHtcbiAgdmFyIGtleSA9IFtdO1xuICBvcHRpb25zID0gKG9wdGlvbnMgPT0gdHJ1ZSkgPyB7IGVudHJvcHk6IHRydWUgfSA6IChvcHRpb25zIHx8IHt9KTtcblxuICAvLyBGbGF0dGVuIHRoZSBzZWVkIHN0cmluZyBvciBidWlsZCBvbmUgZnJvbSBsb2NhbCBlbnRyb3B5IGlmIG5lZWRlZC5cbiAgdmFyIHNob3J0c2VlZCA9IG1peGtleShmbGF0dGVuKFxuICAgIG9wdGlvbnMuZW50cm9weSA/IFtzZWVkLCB0b3N0cmluZyhwb29sKV0gOlxuICAgIChzZWVkID09IG51bGwpID8gYXV0b3NlZWQoKSA6IHNlZWQsIDMpLCBrZXkpO1xuXG4gIC8vIFVzZSB0aGUgc2VlZCB0byBpbml0aWFsaXplIGFuIEFSQzQgZ2VuZXJhdG9yLlxuICB2YXIgYXJjNCA9IG5ldyBBUkM0KGtleSk7XG5cbiAgLy8gVGhpcyBmdW5jdGlvbiByZXR1cm5zIGEgcmFuZG9tIGRvdWJsZSBpbiBbMCwgMSkgdGhhdCBjb250YWluc1xuICAvLyByYW5kb21uZXNzIGluIGV2ZXJ5IGJpdCBvZiB0aGUgbWFudGlzc2Egb2YgdGhlIElFRUUgNzU0IHZhbHVlLlxuICB2YXIgcHJuZyA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciBuID0gYXJjNC5nKGNodW5rcyksICAgICAgICAgICAgIC8vIFN0YXJ0IHdpdGggYSBudW1lcmF0b3IgbiA8IDIgXiA0OFxuICAgICAgICBkID0gc3RhcnRkZW5vbSwgICAgICAgICAgICAgICAgIC8vICAgYW5kIGRlbm9taW5hdG9yIGQgPSAyIF4gNDguXG4gICAgICAgIHggPSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gICBhbmQgbm8gJ2V4dHJhIGxhc3QgYnl0ZScuXG4gICAgd2hpbGUgKG4gPCBzaWduaWZpY2FuY2UpIHsgICAgICAgICAgLy8gRmlsbCB1cCBhbGwgc2lnbmlmaWNhbnQgZGlnaXRzIGJ5XG4gICAgICBuID0gKG4gKyB4KSAqIHdpZHRoOyAgICAgICAgICAgICAgLy8gICBzaGlmdGluZyBudW1lcmF0b3IgYW5kXG4gICAgICBkICo9IHdpZHRoOyAgICAgICAgICAgICAgICAgICAgICAgLy8gICBkZW5vbWluYXRvciBhbmQgZ2VuZXJhdGluZyBhXG4gICAgICB4ID0gYXJjNC5nKDEpOyAgICAgICAgICAgICAgICAgICAgLy8gICBuZXcgbGVhc3Qtc2lnbmlmaWNhbnQtYnl0ZS5cbiAgICB9XG4gICAgd2hpbGUgKG4gPj0gb3ZlcmZsb3cpIHsgICAgICAgICAgICAgLy8gVG8gYXZvaWQgcm91bmRpbmcgdXAsIGJlZm9yZSBhZGRpbmdcbiAgICAgIG4gLz0gMjsgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIGxhc3QgYnl0ZSwgc2hpZnQgZXZlcnl0aGluZ1xuICAgICAgZCAvPSAyOyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgcmlnaHQgdXNpbmcgaW50ZWdlciBtYXRoIHVudGlsXG4gICAgICB4ID4+Pj0gMTsgICAgICAgICAgICAgICAgICAgICAgICAgLy8gICB3ZSBoYXZlIGV4YWN0bHkgdGhlIGRlc2lyZWQgYml0cy5cbiAgICB9XG4gICAgcmV0dXJuIChuICsgeCkgLyBkOyAgICAgICAgICAgICAgICAgLy8gRm9ybSB0aGUgbnVtYmVyIHdpdGhpbiBbMCwgMSkuXG4gIH07XG5cbiAgcHJuZy5pbnQzMiA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gYXJjNC5nKDQpIHwgMDsgfVxuICBwcm5nLnF1aWNrID0gZnVuY3Rpb24oKSB7IHJldHVybiBhcmM0LmcoNCkgLyAweDEwMDAwMDAwMDsgfVxuICBwcm5nLmRvdWJsZSA9IHBybmc7XG5cbiAgLy8gTWl4IHRoZSByYW5kb21uZXNzIGludG8gYWNjdW11bGF0ZWQgZW50cm9weS5cbiAgbWl4a2V5KHRvc3RyaW5nKGFyYzQuUyksIHBvb2wpO1xuXG4gIC8vIENhbGxpbmcgY29udmVudGlvbjogd2hhdCB0byByZXR1cm4gYXMgYSBmdW5jdGlvbiBvZiBwcm5nLCBzZWVkLCBpc19tYXRoLlxuICByZXR1cm4gKG9wdGlvbnMucGFzcyB8fCBjYWxsYmFjayB8fFxuICAgICAgZnVuY3Rpb24ocHJuZywgc2VlZCwgaXNfbWF0aF9jYWxsLCBzdGF0ZSkge1xuICAgICAgICBpZiAoc3RhdGUpIHtcbiAgICAgICAgICAvLyBMb2FkIHRoZSBhcmM0IHN0YXRlIGZyb20gdGhlIGdpdmVuIHN0YXRlIGlmIGl0IGhhcyBhbiBTIGFycmF5LlxuICAgICAgICAgIGlmIChzdGF0ZS5TKSB7IGNvcHkoc3RhdGUsIGFyYzQpOyB9XG4gICAgICAgICAgLy8gT25seSBwcm92aWRlIHRoZSAuc3RhdGUgbWV0aG9kIGlmIHJlcXVlc3RlZCB2aWEgb3B0aW9ucy5zdGF0ZS5cbiAgICAgICAgICBwcm5nLnN0YXRlID0gZnVuY3Rpb24oKSB7IHJldHVybiBjb3B5KGFyYzQsIHt9KTsgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgY2FsbGVkIGFzIGEgbWV0aG9kIG9mIE1hdGggKE1hdGguc2VlZHJhbmRvbSgpKSwgbXV0YXRlXG4gICAgICAgIC8vIE1hdGgucmFuZG9tIGJlY2F1c2UgdGhhdCBpcyBob3cgc2VlZHJhbmRvbS5qcyBoYXMgd29ya2VkIHNpbmNlIHYxLjAuXG4gICAgICAgIGlmIChpc19tYXRoX2NhbGwpIHsgbWF0aFtybmduYW1lXSA9IHBybmc7IHJldHVybiBzZWVkOyB9XG5cbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBpdCBpcyBhIG5ld2VyIGNhbGxpbmcgY29udmVudGlvbiwgc28gcmV0dXJuIHRoZVxuICAgICAgICAvLyBwcm5nIGRpcmVjdGx5LlxuICAgICAgICBlbHNlIHJldHVybiBwcm5nO1xuICAgICAgfSkoXG4gIHBybmcsXG4gIHNob3J0c2VlZCxcbiAgJ2dsb2JhbCcgaW4gb3B0aW9ucyA/IG9wdGlvbnMuZ2xvYmFsIDogKHRoaXMgPT0gbWF0aCksXG4gIG9wdGlvbnMuc3RhdGUpO1xufVxuXG4vL1xuLy8gQVJDNFxuLy9cbi8vIEFuIEFSQzQgaW1wbGVtZW50YXRpb24uICBUaGUgY29uc3RydWN0b3IgdGFrZXMgYSBrZXkgaW4gdGhlIGZvcm0gb2Zcbi8vIGFuIGFycmF5IG9mIGF0IG1vc3QgKHdpZHRoKSBpbnRlZ2VycyB0aGF0IHNob3VsZCBiZSAwIDw9IHggPCAod2lkdGgpLlxuLy9cbi8vIFRoZSBnKGNvdW50KSBtZXRob2QgcmV0dXJucyBhIHBzZXVkb3JhbmRvbSBpbnRlZ2VyIHRoYXQgY29uY2F0ZW5hdGVzXG4vLyB0aGUgbmV4dCAoY291bnQpIG91dHB1dHMgZnJvbSBBUkM0LiAgSXRzIHJldHVybiB2YWx1ZSBpcyBhIG51bWJlciB4XG4vLyB0aGF0IGlzIGluIHRoZSByYW5nZSAwIDw9IHggPCAod2lkdGggXiBjb3VudCkuXG4vL1xuZnVuY3Rpb24gQVJDNChrZXkpIHtcbiAgdmFyIHQsIGtleWxlbiA9IGtleS5sZW5ndGgsXG4gICAgICBtZSA9IHRoaXMsIGkgPSAwLCBqID0gbWUuaSA9IG1lLmogPSAwLCBzID0gbWUuUyA9IFtdO1xuXG4gIC8vIFRoZSBlbXB0eSBrZXkgW10gaXMgdHJlYXRlZCBhcyBbMF0uXG4gIGlmICgha2V5bGVuKSB7IGtleSA9IFtrZXlsZW4rK107IH1cblxuICAvLyBTZXQgdXAgUyB1c2luZyB0aGUgc3RhbmRhcmQga2V5IHNjaGVkdWxpbmcgYWxnb3JpdGhtLlxuICB3aGlsZSAoaSA8IHdpZHRoKSB7XG4gICAgc1tpXSA9IGkrKztcbiAgfVxuICBmb3IgKGkgPSAwOyBpIDwgd2lkdGg7IGkrKykge1xuICAgIHNbaV0gPSBzW2ogPSBtYXNrICYgKGogKyBrZXlbaSAlIGtleWxlbl0gKyAodCA9IHNbaV0pKV07XG4gICAgc1tqXSA9IHQ7XG4gIH1cblxuICAvLyBUaGUgXCJnXCIgbWV0aG9kIHJldHVybnMgdGhlIG5leHQgKGNvdW50KSBvdXRwdXRzIGFzIG9uZSBudW1iZXIuXG4gIChtZS5nID0gZnVuY3Rpb24oY291bnQpIHtcbiAgICAvLyBVc2luZyBpbnN0YW5jZSBtZW1iZXJzIGluc3RlYWQgb2YgY2xvc3VyZSBzdGF0ZSBuZWFybHkgZG91YmxlcyBzcGVlZC5cbiAgICB2YXIgdCwgciA9IDAsXG4gICAgICAgIGkgPSBtZS5pLCBqID0gbWUuaiwgcyA9IG1lLlM7XG4gICAgd2hpbGUgKGNvdW50LS0pIHtcbiAgICAgIHQgPSBzW2kgPSBtYXNrICYgKGkgKyAxKV07XG4gICAgICByID0gciAqIHdpZHRoICsgc1ttYXNrICYgKChzW2ldID0gc1tqID0gbWFzayAmIChqICsgdCldKSArIChzW2pdID0gdCkpXTtcbiAgICB9XG4gICAgbWUuaSA9IGk7IG1lLmogPSBqO1xuICAgIHJldHVybiByO1xuICAgIC8vIEZvciByb2J1c3QgdW5wcmVkaWN0YWJpbGl0eSwgdGhlIGZ1bmN0aW9uIGNhbGwgYmVsb3cgYXV0b21hdGljYWxseVxuICAgIC8vIGRpc2NhcmRzIGFuIGluaXRpYWwgYmF0Y2ggb2YgdmFsdWVzLiAgVGhpcyBpcyBjYWxsZWQgUkM0LWRyb3BbMjU2XS5cbiAgICAvLyBTZWUgaHR0cDovL2dvb2dsZS5jb20vc2VhcmNoP3E9cnNhK2ZsdWhyZXIrcmVzcG9uc2UmYnRuSVxuICB9KSh3aWR0aCk7XG59XG5cbi8vXG4vLyBjb3B5KClcbi8vIENvcGllcyBpbnRlcm5hbCBzdGF0ZSBvZiBBUkM0IHRvIG9yIGZyb20gYSBwbGFpbiBvYmplY3QuXG4vL1xuZnVuY3Rpb24gY29weShmLCB0KSB7XG4gIHQuaSA9IGYuaTtcbiAgdC5qID0gZi5qO1xuICB0LlMgPSBmLlMuc2xpY2UoKTtcbiAgcmV0dXJuIHQ7XG59O1xuXG4vL1xuLy8gZmxhdHRlbigpXG4vLyBDb252ZXJ0cyBhbiBvYmplY3QgdHJlZSB0byBuZXN0ZWQgYXJyYXlzIG9mIHN0cmluZ3MuXG4vL1xuZnVuY3Rpb24gZmxhdHRlbihvYmosIGRlcHRoKSB7XG4gIHZhciByZXN1bHQgPSBbXSwgdHlwID0gKHR5cGVvZiBvYmopLCBwcm9wO1xuICBpZiAoZGVwdGggJiYgdHlwID09ICdvYmplY3QnKSB7XG4gICAgZm9yIChwcm9wIGluIG9iaikge1xuICAgICAgdHJ5IHsgcmVzdWx0LnB1c2goZmxhdHRlbihvYmpbcHJvcF0sIGRlcHRoIC0gMSkpOyB9IGNhdGNoIChlKSB7fVxuICAgIH1cbiAgfVxuICByZXR1cm4gKHJlc3VsdC5sZW5ndGggPyByZXN1bHQgOiB0eXAgPT0gJ3N0cmluZycgPyBvYmogOiBvYmogKyAnXFwwJyk7XG59XG5cbi8vXG4vLyBtaXhrZXkoKVxuLy8gTWl4ZXMgYSBzdHJpbmcgc2VlZCBpbnRvIGEga2V5IHRoYXQgaXMgYW4gYXJyYXkgb2YgaW50ZWdlcnMsIGFuZFxuLy8gcmV0dXJucyBhIHNob3J0ZW5lZCBzdHJpbmcgc2VlZCB0aGF0IGlzIGVxdWl2YWxlbnQgdG8gdGhlIHJlc3VsdCBrZXkuXG4vL1xuZnVuY3Rpb24gbWl4a2V5KHNlZWQsIGtleSkge1xuICB2YXIgc3RyaW5nc2VlZCA9IHNlZWQgKyAnJywgc21lYXIsIGogPSAwO1xuICB3aGlsZSAoaiA8IHN0cmluZ3NlZWQubGVuZ3RoKSB7XG4gICAga2V5W21hc2sgJiBqXSA9XG4gICAgICBtYXNrICYgKChzbWVhciBePSBrZXlbbWFzayAmIGpdICogMTkpICsgc3RyaW5nc2VlZC5jaGFyQ29kZUF0KGorKykpO1xuICB9XG4gIHJldHVybiB0b3N0cmluZyhrZXkpO1xufVxuXG4vL1xuLy8gYXV0b3NlZWQoKVxuLy8gUmV0dXJucyBhbiBvYmplY3QgZm9yIGF1dG9zZWVkaW5nLCB1c2luZyB3aW5kb3cuY3J5cHRvIGFuZCBOb2RlIGNyeXB0b1xuLy8gbW9kdWxlIGlmIGF2YWlsYWJsZS5cbi8vXG5mdW5jdGlvbiBhdXRvc2VlZCgpIHtcbiAgdHJ5IHtcbiAgICB2YXIgb3V0O1xuICAgIGlmIChub2RlY3J5cHRvICYmIChvdXQgPSBub2RlY3J5cHRvLnJhbmRvbUJ5dGVzKSkge1xuICAgICAgLy8gVGhlIHVzZSBvZiAnb3V0JyB0byByZW1lbWJlciByYW5kb21CeXRlcyBtYWtlcyB0aWdodCBtaW5pZmllZCBjb2RlLlxuICAgICAgb3V0ID0gb3V0KHdpZHRoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb3V0ID0gbmV3IFVpbnQ4QXJyYXkod2lkdGgpO1xuICAgICAgKGdsb2JhbC5jcnlwdG8gfHwgZ2xvYmFsLm1zQ3J5cHRvKS5nZXRSYW5kb21WYWx1ZXMob3V0KTtcbiAgICB9XG4gICAgcmV0dXJuIHRvc3RyaW5nKG91dCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICB2YXIgYnJvd3NlciA9IGdsb2JhbC5uYXZpZ2F0b3IsXG4gICAgICAgIHBsdWdpbnMgPSBicm93c2VyICYmIGJyb3dzZXIucGx1Z2lucztcbiAgICByZXR1cm4gWytuZXcgRGF0ZSwgZ2xvYmFsLCBwbHVnaW5zLCBnbG9iYWwuc2NyZWVuLCB0b3N0cmluZyhwb29sKV07XG4gIH1cbn1cblxuLy9cbi8vIHRvc3RyaW5nKClcbi8vIENvbnZlcnRzIGFuIGFycmF5IG9mIGNoYXJjb2RlcyB0byBhIHN0cmluZ1xuLy9cbmZ1bmN0aW9uIHRvc3RyaW5nKGEpIHtcbiAgcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoMCwgYSk7XG59XG5cbi8vXG4vLyBXaGVuIHNlZWRyYW5kb20uanMgaXMgbG9hZGVkLCB3ZSBpbW1lZGlhdGVseSBtaXggYSBmZXcgYml0c1xuLy8gZnJvbSB0aGUgYnVpbHQtaW4gUk5HIGludG8gdGhlIGVudHJvcHkgcG9vbC4gIEJlY2F1c2Ugd2UgZG9cbi8vIG5vdCB3YW50IHRvIGludGVyZmVyZSB3aXRoIGRldGVybWluaXN0aWMgUFJORyBzdGF0ZSBsYXRlcixcbi8vIHNlZWRyYW5kb20gd2lsbCBub3QgY2FsbCBtYXRoLnJhbmRvbSBvbiBpdHMgb3duIGFnYWluIGFmdGVyXG4vLyBpbml0aWFsaXphdGlvbi5cbi8vXG5taXhrZXkobWF0aC5yYW5kb20oKSwgcG9vbCk7XG5cbi8vXG4vLyBOb2RlanMgYW5kIEFNRCBzdXBwb3J0OiBleHBvcnQgdGhlIGltcGxlbWVudGF0aW9uIGFzIGEgbW9kdWxlIHVzaW5nXG4vLyBlaXRoZXIgY29udmVudGlvbi5cbi8vXG5pZiAoKHR5cGVvZiBtb2R1bGUpID09ICdvYmplY3QnICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gc2VlZHJhbmRvbTtcbiAgLy8gV2hlbiBpbiBub2RlLmpzLCB0cnkgdXNpbmcgY3J5cHRvIHBhY2thZ2UgZm9yIGF1dG9zZWVkaW5nLlxuICB0cnkge1xuICAgIG5vZGVjcnlwdG8gPSByZXF1aXJlKCdjcnlwdG8nKTtcbiAgfSBjYXRjaCAoZXgpIHt9XG59IGVsc2UgaWYgKCh0eXBlb2YgZGVmaW5lKSA9PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKGZ1bmN0aW9uKCkgeyByZXR1cm4gc2VlZHJhbmRvbTsgfSk7XG59IGVsc2Uge1xuICAvLyBXaGVuIGluY2x1ZGVkIGFzIGEgcGxhaW4gc2NyaXB0LCBzZXQgdXAgTWF0aC5zZWVkcmFuZG9tIGdsb2JhbC5cbiAgbWF0aFsnc2VlZCcgKyBybmduYW1lXSA9IHNlZWRyYW5kb207XG59XG5cblxuLy8gRW5kIGFub255bW91cyBzY29wZSwgYW5kIHBhc3MgaW5pdGlhbCB2YWx1ZXMuXG59KShcbiAgLy8gZ2xvYmFsOiBgc2VsZmAgaW4gYnJvd3NlcnMgKGluY2x1ZGluZyBzdHJpY3QgbW9kZSBhbmQgd2ViIHdvcmtlcnMpLFxuICAvLyBvdGhlcndpc2UgYHRoaXNgIGluIE5vZGUgYW5kIG90aGVyIGVudmlyb25tZW50c1xuICAodHlwZW9mIHNlbGYgIT09ICd1bmRlZmluZWQnKSA/IHNlbGYgOiB0aGlzLFxuICBbXSwgICAgIC8vIHBvb2w6IGVudHJvcHkgcG9vbCBzdGFydHMgZW1wdHlcbiAgTWF0aCAgICAvLyBtYXRoOiBwYWNrYWdlIGNvbnRhaW5pbmcgcmFuZG9tLCBwb3csIGFuZCBzZWVkcmFuZG9tXG4pO1xuIl0sIm5hbWVzIjpbImlzTmlsIiwieCIsImluc2VydFNtYWxsZXIiLCJkaXN0YW5jZXNBciIsImluZGV4ZXMiLCJudW0iLCJpbmRleCIsImxlbmd0aCIsIm5ld1Bvc2l0aW9uIiwiZmluZEluZGV4IiwidiIsInBvcCIsInNwbGljZSIsIkZsb2F0MzJBcnJheSIsImFzc2VydCIsImNvbmRpdGlvbiIsIm1lc3NhZ2UiLCJFcnJvciIsInZlY3RvckRpc3RhbmNlTWV0cmljc01ldGhvZHMiLCJwIiwicSIsInJlc3VsdCIsImxlbiIsImkiLCJNYXRoIiwicG93Iiwic3FydCIsInN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHMiLCJzMSIsInMyIiwiZGlzdCIsImJpdEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kcyIsImludEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kcyIsIm51bWJlckRpc3RhbmNlTWV0cmljc01ldGhvZHMiLCJBdmFpbGFibGVNZXRyaWNzIiwiTWV0cmljVG9EYXRhVHlwZSIsIk9iamVjdCIsImtleXMiLCJyZWR1Y2UiLCJyZXQiLCJrZXkiLCJ2YWwiLCJNZWFzdXJlIiwibWV0aG9kIiwiZGF0YVR5cGUiLCJjb25zdHJ1Y3RvciIsInRoaXMiLCJnZXRNZWFzdXJlIiwib3B0cyIsImRpY3QiLCJoYXNPd25Qcm9wZXJ0eSIsIm5hbWUiLCJpc051bWVyaWNNZXRyaWMiLCJzdGF0aWMiLCJhdmFpbGFibGVNZWFzdXJlcyIsIkRpc3RhbmNlTWF0cml4U2VydmljZSIsIl93b3JrZXJzIiwiX3dvcmtlckNvdW50IiwiX3Rlcm1pbmF0ZU9uQ29tcGxldGUiLCJ1c2VDb25jdXJyZW50V29ya2VycyIsInRlcm1pbmF0ZU9uQ29tcGxldGUiLCJ0aHJlYWRDb3VudCIsIm5hdmlnYXRvciIsImhhcmR3YXJlQ29uY3VycmVuY3kiLCJtYXgiLCJBcnJheSIsImZpbGwiLCJtYXAiLCJXb3JrZXIiLCJVUkwiLCJhc3luYyIsInZhbHVlcyIsImZuTmFtZSIsIm5vcm1hbGl6ZSIsImNhbGNNdWx0aSIsImZuTmFtZXMiLCJ3ZWlnaHRzIiwiYWdncmVnYXRpb25NZXRob2QiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInByb21pc2VzIiwidG90YWxMZW5ndGgiLCJtaW4iLCJjaHVua1NpemUiLCJkaXN0YW5jZU1hdHJpeCIsImVuZFJvdyIsImVuZENvbCIsImxtaW4iLCJsbWF4IiwiTnVtYmVyIiwiTUlOX1ZBTFVFIiwic3RhcnQiLCJmbG9vciIsImVuZCIsInN0YXJ0Um93Iiwic3RhcnRDb2wiLCJwb3N0TWVzc2FnZSIsImNodW5ja1NpemUiLCJyZXNvbHZlV29ya2VyIiwicmVqZWN0V29ya2VyIiwib25tZXNzYWdlIiwiZGF0YSIsImVycm9yIiwiZGlzdGFuY2VNYXRyaXhEYXRhIiwic2V0VGltZW91dCIsInRlcm1pbmF0ZSIsInNldCIsImFsbCIsImZvckVhY2giLCJ2YWx1ZSIsImUiLCJ3b3JrZXIiLCJ0YXVSYW5kSW50IiwibiIsInJhbmRvbSIsInRhdVJhbmQiLCJlbXB0eSIsIm91dHB1dCIsInB1c2giLCJ1bmRlZmluZWQiLCJyYW5nZSIsIl8iLCJmaWxsZWQiLCJ6ZXJvcyIsIm1lYW4iLCJpbnB1dCIsInN1bSIsInJlamVjdGlvblNhbXBsZSIsIm5TYW1wbGVzIiwicG9vbFNpemUiLCJyZWplY3RTYW1wbGUiLCJqIiwiYnJva2VuIiwiayIsInJlc2hhcGUyZCIsImEiLCJiIiwicm93cyIsImNvbCIsIm1ha2VIZWFwIiwiblBvaW50cyIsInNpemUiLCJtYWtlQXJyYXlzIiwiZmlsbFZhbHVlIiwiaGVhcCIsIkluZmluaXR5IiwiaGVhcFB1c2giLCJyb3ciLCJ3ZWlnaHQiLCJmbGFnIiwiaW5kaWNlcyIsInVuY2hlY2tlZEhlYXBQdXNoIiwiaXNOZXciLCJpU3dhcCIsImljMSIsImljMiIsImhlYXBTaGFwZTIiLCJidWlsZENhbmRpZGF0ZXMiLCJjdXJyZW50R3JhcGgiLCJuVmVydGljZXMiLCJuTmVpZ2hib3JzIiwibWF4Q2FuZGlkYXRlcyIsImNhbmRpZGF0ZU5laWdoYm9ycyIsImlkeCIsImlzbiIsImQiLCJkZWhlYXBTb3J0IiwiaW5kSGVhcCIsImRpc3RIZWFwIiwiaW5kSGVhcEluZGV4IiwiZGlzdEhlYXBJbmRleCIsInRlbXAxIiwidGVtcDIiLCJzaWZ0RG93biIsImhlYXAxIiwiaGVhcDIiLCJjZWlsaW5nIiwiZWx0IiwibGVmdENoaWxkIiwicmlnaHRDaGlsZCIsInN3YXAiLCJzbWFsbGVzdEZsYWdnZWQiLCJpbmQiLCJtaW5EaXN0IiwicmVzdWx0SW5kZXgiLCJTcGFyc2VNYXRyaXgiLCJlbnRyaWVzIiwiTWFwIiwiblJvd3MiLCJuQ29scyIsImNvbHMiLCJkaW1zIiwiY2hlY2tEaW1zIiwibWFrZUtleSIsImhhcyIsImdldCIsImRlZmF1bHRWYWx1ZSIsImdldEFsbCIsIm9yZGVyZWQiLCJyb3dDb2xWYWx1ZXMiLCJzb3J0IiwiZ2V0RGltcyIsImdldFJvd3MiLCJmcm9tIiwiX2tleSIsImdldENvbHMiLCJnZXRWYWx1ZXMiLCJmbiIsInZhbHMiLCJ0b0FycmF5IiwibWF0cml4Iiwib2xkUm93cyIsIm9sZENvbHMiLCJvbGRWYWxzIiwibWF0bGVuIiwiSW50MzJBcnJheSIsInBhaXJ3aXNlTXVsdGlwbHkiLCJlbGVtZW50V2lzZSIsInkiLCJhZGQiLCJzdWJ0cmFjdCIsIm11bHRpcGx5U2NhbGFyIiwic2NhbGFyIiwiZWxpbWluYXRlWmVyb3MiLCJtIiwiemVyb0luZGljZXMiLCJTZXQiLCJyZW1vdmVCeVplcm9JbmRleCIsIm5leHRWYWx1ZXMiLCJmaWx0ZXIiLCJuZXh0Um93cyIsIm5leHRDb2xzIiwibm9ybVR5cGUiLCJub3JtRm4iLCJub3JtRm5zIiwiY29sc0J5Um93IiwibmV4dE1hdHJpeCIsIm5vcm0iLCJ4cyIsIm9wIiwidmlzaXRlZCIsIm9wZXJhdGUiLCJuZXh0VmFsdWUiLCJ2YWx1ZXNBIiwicm93c0EiLCJjb2xzQSIsInZhbHVlc0IiLCJyb3dzQiIsImNvbHNCIiwiZ2V0Q1NSIiwiaW5kcHRyIiwiY3VycmVudFJvdyIsIkZsYXRUcmVlIiwiaHlwZXJwbGFuZXMiLCJvZmZzZXRzIiwiY2hpbGRyZW4iLCJtYWtlRm9yZXN0IiwiblRyZWVzIiwibGVhZlNpemUiLCJ0cmVlcyIsIm1ha2VFdWNsaWRlYW5UcmVlIiwibWFrZVRyZWUiLCJmb3Jlc3QiLCJ0cmVlIiwibk5vZGVzIiwibnVtTm9kZXMiLCJuTGVhdmVzIiwibnVtTGVhdmVzIiwiaHlwZXJwbGFuZSIsInJlY3Vyc2l2ZUZsYXR0ZW4iLCJmbGF0dGVuVHJlZSIsInNwbGl0UmVzdWx0cyIsImxlZnRJbmRleCIsInJpZ2h0SW5kZXgiLCJsZWZ0IiwicmlnaHQiLCJoeXBlcnBsYW5lT2Zmc2V0IiwiaHlwZXJwbGFuZVZlY3RvciIsIm5MZWZ0IiwiblJpZ2h0Iiwic2lkZSIsIm1hcmdpbiIsImluZGljZXNMZWZ0IiwiaW5kaWNlc1JpZ2h0Iiwib2Zmc2V0IiwiZXVjbGlkZWFuUmFuZG9tUHJvamVjdGlvblNwbGl0IiwiaXNMZWFmIiwibm9kZU51bSIsImxlYWZOdW0iLCJvbGROb2RlTnVtIiwicmVzIiwic2VsZWN0U2lkZSIsInBvaW50Iiwic2VhcmNoRmxhdFRyZWUiLCJub2RlIiwiU01PT1RIX0tfVE9MRVJBTkNFIiwiTUlOX0tfRElTVF9TQ0FMRSIsIlVNQVAiLCJsZWFybmluZ1JhdGUiLCJsb2NhbENvbm5lY3Rpdml0eSIsIm5Db21wb25lbnRzIiwibkVwb2NocyIsIm5lZ2F0aXZlU2FtcGxlUmF0ZSIsInJlcHVsc2lvblN0cmVuZ3RoIiwic2V0T3BNaXhSYXRpbyIsInNwcmVhZCIsInRyYW5zZm9ybVF1ZXVlU2l6ZSIsInRhcmdldE1ldHJpYyIsInRhcmdldFdlaWdodCIsInRhcmdldE5OZWlnaGJvcnMiLCJkaXN0YW5jZUZuIiwibnVtZXJpYyIsImtubkluZGljZXMiLCJrbm5EaXN0YW5jZXMiLCJncmFwaCIsIlgiLCJpc0luaXRpYWxpemVkIiwicnBGb3Jlc3QiLCJpbml0RnJvbVJhbmRvbSIsImluaXRGcm9tVHJlZSIsInNlYXJjaCIsInNlYXJjaEdyYXBoIiwiWSIsImVtYmVkZGluZyIsIm9wdGltaXphdGlvblN0YXRlIiwiT3B0aW1pemF0aW9uU3RhdGUiLCJuZWlnaGJvcnMiLCJwYXJhbXMiLCJzZXRQYXJhbSIsImZpdCIsImluaXRpYWxpemVGaXQiLCJvcHRpbWl6ZUxheW91dCIsImNhbGxiYWNrIiwib3B0aW1pemVMYXlvdXRBc3luYyIsInNldFN1cGVydmlzZWRQcm9qZWN0aW9uIiwic2V0UHJlY29tcHV0ZWRLTk4iLCJnZXRORXBvY2hzIiwia25uUmVzdWx0cyIsIm5lYXJlc3ROZWlnaGJvcnMiLCJmdXp6eVNpbXBsaWNpYWxTZXQiLCJtYWtlU2VhcmNoRm5zIiwibWFrZVNlYXJjaEdyYXBoIiwicHJvY2Vzc0dyYXBoRm9yU3VwZXJ2aXNlZFByb2plY3Rpb24iLCJoZWFkIiwidGFpbCIsImVwb2Noc1BlclNhbXBsZSIsImluaXRpYWxpemVTaW1wbGljaWFsU2V0RW1iZWRkaW5nIiwiaW5pdGlhbGl6ZU9wdGltaXphdGlvbiIsInByZXBhcmVGb3JPcHRpbWl6YXRpb25Mb29wIiwicXVlcnlQb2ludHMiLCJfaGVhcCIsIl90cmVlIiwiaW5pdGlhbGl6YXRpb24iLCJ0cmllZCIsInZlcnRleCIsImNhbmRpZGF0ZXMiLCJzbGljZSIsImNhbmRpZGF0ZSIsImtubiIsImRpc3RhbmNlcyIsIm5laWdoYm9yIiwiZGlzdGFuY2UiLCJ0cmFuc2Zvcm0iLCJ0b1RyYW5zZm9ybSIsInJhd0RhdGEiLCJpbml0IiwicmVzdWx0cyIsImFkanVzdGVkTG9jYWxDb25uZWN0aXZpdHkiLCJzaWdtYXMiLCJyaG9zIiwic21vb3RoS05ORGlzdGFuY2UiLCJjb21wdXRlTWVtYmVyc2hpcFN0cmVuZ3RocyIsImNzck1hdHJpeCIsIl96IiwiaW5pdFRyYW5zZm9ybSIsImdyYXBoTWF4IiwibWFrZUVwb2Noc1BlclNhbXBsZSIsImFzc2lnbk9wdGltaXphdGlvblN0YXRlUGFyYW1ldGVycyIsImhlYWRFbWJlZGRpbmciLCJ0YWlsRW1iZWRkaW5nIiwiY3VycmVudEVwb2NoIiwiZmFyRGlzdCIsImNhdGVnb3JpY2FsU2ltcGxpY2lhbFNldEludGVyc2VjdGlvbiIsInN0ZXAiLCJvcHRpbWl6ZUxheW91dFN0ZXAiLCJnZXRFbWJlZGRpbmciLCJtZXRyaWNOTkRlc2NlbnQiLCJsZWFmQXJyYXkiLCJuSXRlcnMiLCJkZWx0YSIsInJobyIsInJwVHJlZUluaXQiLCJjIiwiY2oiLCJjayIsInJvdW5kIiwibG9nIiwibG9nMiIsInNwYXJzZU1hdHJpeCIsInRyYW5zcG9zZSIsInByb2RNYXRyaXgiLCJzaW1wbGljaWFsU2V0IiwidGFyZ2V0IiwidW5rbm93bkRpc3QiLCJpbnRlcnNlY3Rpb24iLCJleHAiLCJmYXN0SW50ZXJzZWN0aW9uIiwicmVzZXRMb2NhbENvbm5lY3Rpdml0eSIsIm5JdGVyIiwiYmFuZHdpZHRoIiwibG8iLCJoaSIsIm1pZCIsIml0aERpc3RhbmNlcyIsIm5vblplcm9EaXN0cyIsImludGVycG9sYXRpb24iLCJwc3VtIiwiYWJzIiwibWVhbkl0aERpc3RhbmNlcyIsIm1lYW5EaXN0YW5jZXMiLCJncmFwaFZhbHVlcyIsImVudHJ5IiwidyIsInN0YXRlIiwiYXNzaWduIiwiZGltIiwibW92ZU90aGVyIiwiZXBvY2hzUGVyTmVnYXRpdmVTYW1wbGUiLCJlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlIiwiZXBvY2hPZk5leHRTYW1wbGUiLCJpbml0aWFsQWxwaGEiLCJhbHBoYSIsImdhbW1hIiwieHYiLCJ5diIsInBhcmFtZXRlclZhbHVlcyIsInBhcmFtZXRlcml6ZWRGdW5jdGlvbiIsIm9wdGlvbnMiLCJtYXhJdGVyYXRpb25zIiwiZ3JhZGllbnREaWZmZXJlbmNlIiwiZGFtcGluZyIsImVycm9yVG9sZXJhbmNlIiwibWluVmFsdWVzIiwibWF4VmFsdWVzIiwiaW5pdGlhbFZhbHVlcyIsInBhcmFtZXRlcnMiLCJwYXJMZW4iLCJNQVhfU0FGRV9JTlRFR0VSIiwiTUlOX1NBRkVfSU5URUdFUiIsIml0ZXJhdGlvbiIsImVycm9yQ2FsY3VsYXRpb24iLCJjb252ZXJnZWQiLCJpc05hTiIsInBhcmFtZXRlckVycm9yIiwiaXRlcmF0aW9ucyIsImZpbmRBQlBhcmFtcyIsImN1cnJlbnQiLCJvdGhlciIsImRpc3RTcXVhcmVkIiwickRpc3QiLCJncmFkQ29lZmYiLCJncmFkRCIsImNsaXAiLCJuTmVnU2FtcGxlcyIsImVwb2NoQ2FsbGJhY2siLCJlcG9jaENvbXBsZXRlZCIsInNob3VsZFN0b3AiLCJpc0ZpbmlzaGVkIiwiZXJyIiwiY2xpcFZhbHVlIiwiVFNORSIsInBlcnBsZXhpdHkiLCJlcHNpbG9uIiwiaXRlciIsIk4iLCJQIiwiZ2FpbnMiLCJ5c3RlcCIsImdldG9wdCIsIm9wdCIsImZpZWxkIiwiZGVmYXVsdHZhbCIsInJldHVyblYiLCJ2VmFsdWUiLCJnYXVzc1JhbmRvbSIsInUiLCJyIiwicmFuZG4iLCJtdSIsInN0ZCIsIkFycmF5QnVmZmVyIiwiYXJyIiwicmFuZG4yZCIsInMiLCJ1c2VzIiwibDIiLCJ4MSIsIngyIiwiRCIsIngxaSIsIngyaSIsInh0b2QiLCJnZXRJdGVyU2l6ZSIsInJvd1NpemUiLCJkMnAiLCJ0b2wiLCJpbmRleGVyIiwiaFRhcmdldCIsInByb3ciLCJiZXRhbWluIiwiYmV0YW1heCIsImJldGEiLCJkb25lIiwibWF4dHJpZXMiLCJwaiIsIm5IZXJlIiwicE91dCIsIk4yIiwic2lnbiIsImluaXREYXRhUmF3IiwiZGlzdHMiLCJpbml0U29sdXRpb24iLCJpbml0RGF0YURpc3QiLCJjb25zb2xlIiwidGltZSIsInRpbWVFbmQiLCJnZXRTb2x1dGlvbiIsImNnIiwiY29zdEdyYWQiLCJjb3N0IiwiZ3JhZCIsInltZWFuIiwiZ2lkIiwic2lkIiwiZ2FpbmlkIiwibmV3Z2FpbiIsIm5ld3NpZCIsImRlYnVnR3JhZCIsInlvbGQiLCJjZzAiLCJjZzEiLCJhbmFseXRpYyIsIm51bWVyaWNhbCIsInF1QXJyIiwicG11bCIsInFzdW0iLCJxdSIsInByZXYiLCJRIiwicHJlbXVsdCIsIk11bHRpQ29sdW1uUmVkdWNlciIsIlRTTkVSZWR1Y2VyIiwicmVkdWNlciIsImRpc3RhbmNlRm5hbWVzIiwiZGlzdGFuY2VGbnMiLCJkaXN0YW5jZUZuQXJncyIsInByb2dyZXNzRnVuYyIsInN1cGVyIiwicmFuZG9tU2VlZCIsIkRhdGUiLCJyYW5kb21GbiIsIm1hdHJpeFNlcnZpY2UiLCJVTUFQUmVkdWNlciIsInZlY3RvcnMiLCJfcGFyYWxsZWxEaXN0YW5jZVdvcmtlcnMiLCJrbm5SZXMiLCJtdWx0aUNvbHVtbktOTiIsImtubkluZGV4ZXMiLCJmaXRBc3luYyIsImVwb2MiLCJBdmFpbGFibGVSZWR1Y2VycyIsIk11bHRpQ29sRGltUmVkdWNlciIsIm1ldHJpY3MiLCJkaXN0YW5jZUFnZ3JlZ2F0aW9uIiwibWVhc3VyZXMiLCJtZWFzdXJlIiwiYml0QXJyYXlMZW5ndGgiLCJfbGVuZ3RoIiwiX2RhdGEiLCJ0eXBlTmFtZSIsImF2YWlsYWJsZU1ldGhvZHMiLCJhdmFpbGFibGVNZXRyaWNzIiwiYW5zIiwib2JqIiwiYXJyYXkiLCJlcG9jaE51bSIsImVwb2Noc0xlbmd0aCIsInNlbGYiLCJjb2x1bW5zRGF0YSIsImRpc3RhbmNlTWV0cmljcyIsIm9uTWVzc2FnZSIsImFsZWEiLCJ4b3IxMjgiLCJ4b3J3b3ciLCJ4b3JzaGlmdDciLCJ4b3I0MDk2IiwidHljaGVpIiwic3IiLCJtb2R1bGUiLCJleHBvcnRzIiwiZ2xvYmFsIiwiZGVmaW5lIiwiQWxlYSIsInNlZWQiLCJtZSIsIm1hc2giLCJTdHJpbmciLCJoIiwiY2hhckNvZGVBdCIsIm5leHQiLCJ0IiwiczAiLCJjb3B5IiwiZiIsImltcGwiLCJ4ZyIsInBybmciLCJpbnQzMiIsImRvdWJsZSIsInF1aWNrIiwiWG9yR2VuIiwic3Ryc2VlZCIsInoiLCJsaW1pdCIsInBvb2wiLCJtYXRoIiwibm9kZWNyeXB0byIsIndpZHRoIiwic3RhcnRkZW5vbSIsInNpZ25pZmljYW5jZSIsIm92ZXJmbG93IiwibWFzayIsInNlZWRyYW5kb20iLCJzaG9ydHNlZWQiLCJtaXhrZXkiLCJmbGF0dGVuIiwiZW50cm9weSIsInRvc3RyaW5nIiwib3V0IiwicmFuZG9tQnl0ZXMiLCJVaW50OEFycmF5IiwiY3J5cHRvIiwibXNDcnlwdG8iLCJnZXRSYW5kb21WYWx1ZXMiLCJicm93c2VyIiwicGx1Z2lucyIsInNjcmVlbiIsImF1dG9zZWVkIiwiYXJjNCIsIkFSQzQiLCJnIiwiUyIsInBhc3MiLCJpc19tYXRoX2NhbGwiLCJrZXlsZW4iLCJjb3VudCIsImRlcHRoIiwicHJvcCIsInR5cCIsInNtZWFyIiwic3RyaW5nc2VlZCIsImZyb21DaGFyQ29kZSIsImFwcGx5IiwiZXgiXSwic291cmNlUm9vdCI6IiJ9