@datagrok/eda 1.1.13 → 1.1.15

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 CHANGED
@@ -1,3 +1,3 @@
1
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
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.gj.CommonItems]:a.Jv},p={[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]},[i.Qe.NumberArray]:{[i.gj.CommonItems]:m[i.gj.CommonItems]}},w=Object.keys(p).reduce(((t,e)=>{for(const n of Object.keys(p[e]))t[n]=e;return t}),{});class y{method;dataType;constructor(t){this.method=t,this.dataType=w[t]}metricNeedsArgs(t){return w[t]==i.Qe.MacroMolecule.toString()||w[t]==i.Qe.Number.toString()||function(t){return w[t]==i.Qe.NumberArray.toString()}(t)}getMeasure(t){const e=p;if(!e.hasOwnProperty(this.dataType)||!e[this.dataType].hasOwnProperty(this.method))throw new Error(`Unknown measure ${this.method} for data type ${this.dataType}`);return this.metricNeedsArgs(this.method)?e[this.dataType][this.method](t):e[this.dataType][this.method]}static getMetricByDataType(t){return Object.keys(p[t])}static get availableMeasures(){return Object.keys(p)}}n(6814);var v=n(7862);class x{_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],v.y.MANHATTAN)}async calcMulti(t,e,n=!0,r=[{}],i=[1],s=v.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 b(t,e){return Math.floor(e()*t)}function M(t){return t()}function N(t){const e=[];for(let n=0;n<t;n++)e.push(void 0);return e}function k(t){return N(t).map(((t,e)=>e))}function S(t,e){return N(t).map((()=>e))}function E(t){return S(t,0)}function A(t){return function(t){return t.reduce(((t,e)=>t+e))}(t)/t.length}function F(t){let e=0;for(let n=0;n<t.length;n++)e=t[n]>e?t[n]:e;return e}function C(t,e,n){const r=E(t);for(let i=0;i<t;i++){let t=!0;for(;t;){const s=b(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 D(t,e){const n=n=>N(t).map((()=>S(e,n))),r=[];return r.push(n(-1)),r.push(n(1/0)),r.push(n(0)),r}function R(t,e,n){const r=E(t);for(let i=0;i<t;i++){let t=!0,s=0;for(;t;){s=b(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 O(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 I(t,e,n,r,i)}function I(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=D(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=M(i);O(s,r,a,n,o),O(s,n,a,r,o),t[2][r][e]=0}return s}function P(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,_(i,r,n,0)}}return{indices:e,weights:n}}function _(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 V(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 L{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 L(this.getRows(),this.getCols(),e,r)}toArray(){const t=N(this.nRows).map((()=>E(this.nCols)));return this.entries.forEach((e=>{t[e.row][e.col]=e.value})),t}}function W(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 L(o,s,a,h)}function j(t,e){return B(t,e,((t,e)=>t*e))}function Y(t,e){return B(t,e,((t,e)=>t+e))}function q(t,e){return B(t,e,((t,e)=>t-e))}function G(t,e){return t.map((t=>t*e))}function U(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 L(a,h,o,t.getDims())}function X(t,e="l2"){const n=K[e],r=new Map;t.forEach(((t,e,n)=>{const i=r.get(e)||[];i.push(n),r.set(e,i)}));const i=new L([],[],[],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 K={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 B(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 L(i,s,o,d)}function Q(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 $(t,e,n,r){const i=Math.max(10,e),s=k(n).map(((e,n)=>function(t,e=30,n,r){return Z(t,k(t.length),e,n,r)}(t,i,n,r))),o=s.map((t=>function(t,e){const n=tt(t),r=et(t),i=k(n).map((()=>t.hyperplane?1:0)),s=E(n),o=k(n).map((()=>[-1,-1])),a=k(r).map((()=>k(e).map((()=>-1))));return J(t,i,s,o,a,0,0),new H(i,s,o,a)}(t,i)));return o}function Z(t,e,n=30,r,i){if(e.length>n){const s=function(t,e,n){const r=b(e.length,n);let i=b(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=E(e.length);for(let r=0;r<e.length;r++){let i=a;i+=h*t[e[r]],0===i?(u[r]=b(2,n),0===u[r]?c+=1:l+=1):i>0?(u[r]=0,c+=1):(u[r]=1,l+=1)}const g=E(c),f=E(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:Z(t,o,n,r+1,i),rightChild:Z(t,a,n,r+1,i),isLeaf:!1,hyperplane:h,offset:c}}return{indices:e,isLeaf:!0}}function J(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=J(t.leftChild,e,n,r,i,s+1,o);return s=h.nodeNum,o=h.leafNum,r[a][1]=s+1,h=J(t.rightChild,e,n,r,i,s+1,o),{nodeNum:h.nodeNum,leafNum:h.leafNum}}}function tt(t){return t.isLeaf?1:1+tt(t.leftChild)+tt(t.rightChild)}function et(t){return t.isLeaf?1:et(t.leftChild)+et(t.rightChild)}function nt(t,e,n,r){let i=e;return i+=t*n,0===i?b(2,r):i>0?0:1}function rt(t,e,n){let r=0;for(;e.children[r][0]>0;)r=0===nt(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 it=n(7531),st=n(1353),ot=n(4162);const at=1e-5,ht=.001;class ct{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=lt;knnIndices;knnDistances;graph;X;isInitialized=!1;rpForest=[];initFromRandom;initFromTree;search;searchGraph;Y;embedding=[];optimizationState=new ut;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=C(t,e.length,s);for(let t=0;t<a.length;t++)a[t]<0||O(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=rt(r[o],t,s);for(let t=0;t<a.length;t++){if(a[t]<0)return;O(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}=Q(n);for(let n=0;n<i.length;n++){const a=new Set(r[0][n]);for(;;){const h=V(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)||(I(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 L([],[],[],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 B(i,W(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=D(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}=P(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 L(l,u,g,f);const m=Q(X(d,"l1")),p=t.length,w=function(t,e,n){const r=E(t.length).map((t=>E(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=U(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=D(n.length,i);for(let r=0;r<n.length;r++){const s=R(i,n.length,e);for(let e=0;e<s.length;e++){const i=t(n[r],n[s[e]]);O(u,r,i,s[e],1),O(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]]);O(u,r[e][i],o,r[e][s],1),O(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||M(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+=O(u,c,g,o,1),s+=O(u,o,g,c,1)}}if(s<=a*i*n.length)break}return P(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=$(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 L(h,c,l,u),f=W(g),d=j(g,f),m=q(Y(g,f),d);return Y(G(m,n),G(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=U(i),function(t){const e=W(t=X(t,"max"));return U(t=Y(t,q(e,j(e,t))))}(i)}smoothKNNDistance(t,e,n=1,r=64,i=1){const s=Math.log(e)/Math.log(2)*i,o=E(t.length),a=E(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>at&&(o[e]+=r*(u[t]-u[t-1]))):o[e]=r*u[0]}else u.length>0&&(o[e]=F(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)<at)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=A(l);a[e]<ht*t&&(a[e]=ht*t)}else{const n=A(t.map(A));a[e]<ht*n&&(a[e]=ht*n)}}return{sigmas:a,rhos:o}}computeMembershipStrengths(t,e,n,r){const i=t.length,s=t[0].length,o=E(i*s),a=E(i*s),h=E(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=E(i.nRows).map((()=>E(e).map((()=>20*M(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=S(t.length,-1),r=F(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 N(300).map(((t,n)=>0+n*((e-0)/299)))}(0,3*t).map((t=>t<e?1:t)),r=E(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,it.Z)(t.x)||t.x.length<2||!(0,it.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,it.Z)(l))throw new Error("initialValues must be an array");let g,f=(0,st.Z)(t,l,e),d=f<=o;for(g=0;g<r&&!d;g++){l=(0,ot.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,st.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],x=s[w],M=ft(v,x);let N=0;M>0&&(N=-2*d*m*Math.pow(M,m-1),N/=d*Math.pow(M,m)+1);for(let t=0;t<p;t++){const e=gt(N*(v[t]-x[t]),4);v[t]+=e*g,l&&(x[t]+=-e*g)}a[e]+=o[e];const k=Math.floor((t-h[e])/c[e]);for(let t=0;t<k;t++){const t=b(y,this.random),e=s[t],n=ft(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=gt(r*(v[t]-e[t]),4)),v[t]+=n*g}}h[e]+=k*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 lt(t,e){return Math.abs(t-e)}class ut{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 gt(t,e){return t>e?e:t<-e?-e:t}function ft(t,e){let n=0;for(let r=0;r<t.length;r++)n+=Math.pow(t[r]-e[r],2);return n}var dt=n(2590),mt=n(9657),pt=n(6377),wt=n.n(pt);class yt{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 vt{data;weights;aggregationMethod;constructor(t){this.data=t.data,this.weights=t.weights,this.aggregationMethod=t.aggregationMethod}}class xt extends vt{reducer;iterations;distanceFnames;distanceFns;distanceFnArgs;progressFunc;constructor(t){super(t);const e=t.randomSeed??Date(),n=wt()(e);t.random=n,this.reducer=new yt(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 x(!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 bt extends vt{reducer;distanceFnames;distanceFns;vectors;progressFunc;distanceFnArgs;constructor(t){const e=t.randomSeed??Date(),n=wt()(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 ct(t)}async transform(t){console.time("knn graph");const e=await(new dt._).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 Mt={UMAP:bt,"t-SNE":xt};class Nt{reducer;constructor(t,e,n,r,i,s){const o=[];for(let e=0;e<n.length;++e){const r=new y(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"==w[a])for(let n=0;n<t[e].length;++n)t[e][n]&&t[e][n]._data?t[e][n]=new mt.Z(t[e][n]._data,t[e][n]._length):t[e][n]=new mt.Z(i)}var a;"UMAP"==e?this.reducer=new bt({data:t,distanceFnames:n,distanceFns:o,distanceFnArgs:s.distanceFnArgs,weights:r,aggregationMethod:i,...s}):"t-SNE"==e&&(this.reducer=new xt({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(p[t])}static get availableMethods(){return Object.keys(Mt)}static get availableMetrics(){let t=[];return Object.values(p).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 Nt(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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R0FOQW1mLEVBQU9ULEVBQUsvZixTQUFVOGYsR0FNYTFCLEVBQU9DLFFBQVMsQ0FDakRELEVBQU9DLFFBQVVpQyxFQUVqQixJQUNFTixFQUFhLEVBQVEsS0FDdkIsQ0FBRSxNQUFPcUMsR0FBSyxDQUNoQixXQUMwQyxLQUF4QyxhQUFvQixPQUFPL0IsQ0FBYSwrQkFRekMsQ0E5TkQsQ0FpT21CLG9CQUFUN0MsS0FBd0JBLEtBQU8vaEIsS0FDdkMsR0FDQXZCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL2Rpc3RhbmNlLW1hdHJpeC91dGlscy5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvdHlwZS1kZWNsYXJhdGlvbnMuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3ZlY3Rvci1vcGVyYXRpb25zLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy90eXBlZC1tZXRyaWNzL3R5cGVkLW1ldHJpY3MuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL2Rpc3RhbmNlLW1hdHJpeC9kaXN0YW5jZS1tYXRyaXgtc2VydmljZS5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdW1hcC91dGlscy5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdW1hcC9oZWFwLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy91bWFwL21hdHJpeC5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvQGRhdGFncm9rLWxpYnJhcmllcy9tbC9zcmMvdW1hcC90cmVlLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy91bWFwL3VtYXAuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL3VtYXAvbm5fZGVzY2VudC5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvbWwtbGV2ZW5iZXJnLW1hcnF1YXJkdC9zcmMvaW5kZXguanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL3Qtc25lL3Qtc25lLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy9kaXN0YW5jZS1tYXRyaXgvcHJveHkuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvbWwvc3JjL211bHRpLWNvbHVtbi1kaW1lbnNpb25hbGl0eS1yZWR1Y3Rpb24vbXVsdGktY29sdW1uLWRpbS1yZWR1Y2VyLmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL21sL3NyYy9tdWx0aS1jb2x1bW4tZGltZW5zaW9uYWxpdHktcmVkdWN0aW9uL211bGl0LWNvbHVtbi1kaW0tcmVkdWNlci13b3JrZXIuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vaW5kZXguanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vbGliL2FsZWEuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vbGliL3R5Y2hlaS5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvc2VlZHJhbmRvbS9saWIveG9yMTI4LmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9zZWVkcmFuZG9tL2xpYi94b3I0MDk2LmpzIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9zZWVkcmFuZG9tL2xpYi94b3JzaGlmdDcuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL3NlZWRyYW5kb20vbGliL3hvcndvdy5qcyIsIndlYnBhY2s6Ly9lZGEvLi9ub2RlX21vZHVsZXMvc2VlZHJhbmRvbS9zZWVkcmFuZG9tLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpc3RhbmNlQWdncmVnYXRpb25NZXRob2RzIH0gZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgY29uc3QgaXNOaWwgPSAoeCkgPT4geCA9PT0gbnVsbCB8fCB4ID09PSB1bmRlZmluZWQ7XG5leHBvcnQgZnVuY3Rpb24gaW5zZXJ0U21hbGxlcihkaXN0YW5jZXNBciwgaW5kZXhlcywgbnVtLCBpbmRleCkge1xuICAgIGlmIChudW0gPiBkaXN0YW5jZXNBcltkaXN0YW5jZXNBci5sZW5ndGggLSAxXSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGNvbnN0IG5ld1Bvc2l0aW9uID0gZGlzdGFuY2VzQXIuZmluZEluZGV4KCh2KSA9PiBudW0gPCB2KTtcbiAgICBkaXN0YW5jZXNBci5wb3AoKTtcbiAgICBkaXN0YW5jZXNBci5zcGxpY2UobmV3UG9zaXRpb24sIDAsIG51bSk7XG4gICAgaW5kZXhlcy5wb3AoKTtcbiAgICBpbmRleGVzLnNwbGljZShuZXdQb3NpdGlvbiwgMCwgaW5kZXgpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGluc2VydExhcmdlcihkaXN0YW5jZXNBciwgaW5kZXhlcywgbnVtLCBpbmRleCkge1xuICAgIGlmIChudW0gPCBkaXN0YW5jZXNBcltkaXN0YW5jZXNBci5sZW5ndGggLSAxXSlcbiAgICAgICAgcmV0dXJuO1xuICAgIGNvbnN0IG5ld1Bvc2l0aW9uID0gZGlzdGFuY2VzQXIuZmluZEluZGV4KCh2KSA9PiBudW0gPiB2KTtcbiAgICBkaXN0YW5jZXNBci5wb3AoKTtcbiAgICBkaXN0YW5jZXNBci5zcGxpY2UobmV3UG9zaXRpb24sIDAsIG51bSk7XG4gICAgaW5kZXhlcy5wb3AoKTtcbiAgICBpbmRleGVzLnNwbGljZShuZXdQb3NpdGlvbiwgMCwgaW5kZXgpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldEFnZ3JlZ2F0aW9uRnVuY3Rpb24oYWdncmVnYXRpb25NZXRob2QsIHdlaWdodHMpIHtcbiAgICBzd2l0Y2ggKGFnZ3JlZ2F0aW9uTWV0aG9kKSB7XG4gICAgICAgIGNhc2UgRGlzdGFuY2VBZ2dyZWdhdGlvbk1ldGhvZHMuTUFOSEFUVEFOOlxuICAgICAgICAgICAgcmV0dXJuICh2cykgPT4gdnMucmVkdWNlKChhY2MsIHZhbCwgaWR4KSA9PiBhY2MgKyB2YWwgKiB3ZWlnaHRzW2lkeF0sIDApO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuICh2cykgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGV1Y2xpZGVhblxuICAgICAgICAgICAgICAgIGNvbnN0IHN1bSA9IHZzLnJlZHVjZSgoYWNjLCB2YWwsIGlkeCkgPT4gYWNjICsgKHZhbCAqIHdlaWdodHNbaWR4XSkgKiogMiwgMCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIE1hdGguc3FydChzdW0pO1xuICAgICAgICAgICAgfTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkWFJwYkhNdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUoxZEdsc2N5NTBjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4UFFVRlBMRVZCUVRSQ0xEQkNRVUV3UWl4RlFVRkRMRTFCUVUwc1UwRkJVeXhEUVVGRE8wRkJSVGxGTEUxQlFVMHNRMEZCUXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4TFFVRkxMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzVTBGQlV5eERRVUZETzBGQlJTOUVMRTFCUVUwc1ZVRkJWU3hoUVVGaExFTkJRVU1zVjBGQmNVSXNSVUZCUlN4UFFVRnBRaXhGUVVGRkxFZEJRVmNzUlVGQlJTeExRVUZoTzBsQlEyaEhMRWxCUVVrc1IwRkJSeXhIUVVGSExGZEJRVmNzUTBGQlF5eFhRVUZYTEVOQlFVTXNUVUZCVFN4SFFVRkRMRU5CUVVNc1EwRkJRenRSUVVONlF5eFBRVUZQTzBsQlJWUXNUVUZCVFN4WFFVRlhMRWRCUVVjc1YwRkJWeXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlF6RkVMRmRCUVZjc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF6dEpRVU5zUWl4WFFVRlhMRU5CUVVNc1RVRkJUU3hEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRlRU1zVDBGQlR5eERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJRc1QwRkJUeXhEUVVGRExFMUJRVTBzUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXl4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRM2hETEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc1dVRkJXU3hEUVVGRExGZEJRWEZDTEVWQlFVVXNUMEZCYVVJc1JVRkJSU3hIUVVGWExFVkJRVVVzUzBGQllUdEpRVU12Uml4SlFVRkpMRWRCUVVjc1IwRkJSeXhYUVVGWExFTkJRVU1zVjBGQlZ5eERRVUZETEUxQlFVMHNSMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRla01zVDBGQlR6dEpRVVZVTEUxQlFVMHNWMEZCVnl4SFFVRkhMRmRCUVZjc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU14UkN4WFFVRlhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRGJFSXNWMEZCVnl4RFFVRkRMRTFCUVUwc1EwRkJReXhYUVVGWExFVkJRVVVzUTBGQlF5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTNoRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXp0SlFVTmtMRTlCUVU4c1EwRkJReXhOUVVGTkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJRenRCUVVONFF5eERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRlZMSE5DUVVGelFpeERRVU53UXl4cFFrRkJORU1zUlVGQlJTeFBRVUZwUWp0SlFVVXZSQ3hSUVVGUkxHbENRVUZwUWl4RlFVRkZPMUZCUTNwQ0xFdEJRVXNzTUVKQlFUQkNMRU5CUVVNc1UwRkJVenRaUVVOMlF5eFBRVUZQTEVOQlFVTXNSVUZCV1N4RlFVRkZMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJTeERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNKR08xbEJRMFVzVDBGQlR5eERRVUZETEVWQlFWa3NSVUZCUlN4RlFVRkZPMmRDUVVOMFFpeFpRVUZaTzJkQ1FVTmFMRTFCUVUwc1IwRkJSeXhIUVVGSExFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1IwRkJSeXhGUVVGRkxFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhIUVVGSExFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dG5Ra0ZETjBVc1QwRkJUeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUTNoQ0xFTkJRVU1zUTBGQlF6dExRVU5NTzBGQlEwZ3NRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCN1JHbHpkR0Z1WTJWQloyZHlaV2RoZEdsdmJrMWxkR2h2WkN3Z1JHbHpkR0Z1WTJWQloyZHlaV2RoZEdsdmJrMWxkR2h2WkhOOUlHWnliMjBnSnk0dmRIbHdaWE1uTzF4dVhHNWxlSEJ2Y25RZ1kyOXVjM1FnYVhOT2FXd2dQU0FvZURvZ1lXNTVLU0E5UGlCNElEMDlQU0J1ZFd4c0lIeDhJSGdnUFQwOUlIVnVaR1ZtYVc1bFpEdGNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR2x1YzJWeWRGTnRZV3hzWlhJb1pHbHpkR0Z1WTJWelFYSTZJRzUxYldKbGNsdGRMQ0JwYm1SbGVHVnpPaUJ1ZFcxaVpYSmJYU3dnYm5WdE9pQnVkVzFpWlhJc0lHbHVaR1Y0T2lCdWRXMWlaWElwSUh0Y2JpQWdhV1lnS0c1MWJTQStJR1JwYzNSaGJtTmxjMEZ5VzJScGMzUmhibU5sYzBGeUxteGxibWQwYUMweFhTbGNiaUFnSUNCeVpYUjFjbTQ3WEc1Y2JpQWdZMjl1YzNRZ2JtVjNVRzl6YVhScGIyNGdQU0JrYVhOMFlXNWpaWE5CY2k1bWFXNWtTVzVrWlhnb0tIWXBJRDArSUc1MWJTQThJSFlwTzF4dUlDQmthWE4wWVc1alpYTkJjaTV3YjNBb0tUdGNiaUFnWkdsemRHRnVZMlZ6UVhJdWMzQnNhV05sS0c1bGQxQnZjMmwwYVc5dUxDQXdMQ0J1ZFcwcE8xeHVJQ0JwYm1SbGVHVnpMbkJ2Y0NncE8xeHVJQ0JwYm1SbGVHVnpMbk53YkdsalpTaHVaWGRRYjNOcGRHbHZiaXdnTUN3Z2FXNWtaWGdwTzF4dWZWeHVYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdhVzV6WlhKMFRHRnlaMlZ5S0dScGMzUmhibU5sYzBGeU9pQnVkVzFpWlhKYlhTd2dhVzVrWlhobGN6b2diblZ0WW1WeVcxMHNJRzUxYlRvZ2JuVnRZbVZ5TENCcGJtUmxlRG9nYm5WdFltVnlLU0I3WEc0Z0lHbG1JQ2h1ZFcwZ1BDQmthWE4wWVc1alpYTkJjbHRrYVhOMFlXNWpaWE5CY2k1c1pXNW5kR2d0TVYwcFhHNGdJQ0FnY21WMGRYSnVPMXh1WEc0Z0lHTnZibk4wSUc1bGQxQnZjMmwwYVc5dUlEMGdaR2x6ZEdGdVkyVnpRWEl1Wm1sdVpFbHVaR1Y0S0NoMktTQTlQaUJ1ZFcwZ1BpQjJLVHRjYmlBZ1pHbHpkR0Z1WTJWelFYSXVjRzl3S0NrN1hHNGdJR1JwYzNSaGJtTmxjMEZ5TG5Od2JHbGpaU2h1WlhkUWIzTnBkR2x2Yml3Z01Dd2diblZ0S1R0Y2JpQWdhVzVrWlhobGN5NXdiM0FvS1R0Y2JpQWdhVzVrWlhobGN5NXpjR3hwWTJVb2JtVjNVRzl6YVhScGIyNHNJREFzSUdsdVpHVjRLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHZGxkRUZuWjNKbFoyRjBhVzl1Um5WdVkzUnBiMjRvWEc0Z0lHRm5aM0psWjJGMGFXOXVUV1YwYUc5a09pQkVhWE4wWVc1alpVRm5aM0psWjJGMGFXOXVUV1YwYUc5a0xDQjNaV2xuYUhSek9pQnVkVzFpWlhKYlhWeHVLVG9nS0haaGJIVmxjem9nYm5WdFltVnlXMTBwSUQwK0lHNTFiV0psY2lCN1hHNGdJSE4zYVhSamFDQW9ZV2RuY21WbllYUnBiMjVOWlhSb2IyUXBJSHRjYmlBZ0lDQmpZWE5sSUVScGMzUmhibU5sUVdkbmNtVm5ZWFJwYjI1TlpYUm9iMlJ6TGsxQlRraEJWRlJCVGpwY2JpQWdJQ0FnSUhKbGRIVnliaUFvZG5NNklHNTFiV0psY2x0ZEtTQTlQaUIyY3k1eVpXUjFZMlVvS0dGall5d2dkbUZzTENCcFpIZ3BJRDArSUdGall5QXJJSFpoYkNBcUlIZGxhV2RvZEhOYmFXUjRYU3dnTUNrN1hHNGdJQ0FnWkdWbVlYVnNkRHBjYmlBZ0lDQWdJSEpsZEhWeWJpQW9kbk02SUc1MWJXSmxjbHRkS1NBOVBpQjdYRzRnSUNBZ0lDQWdJQzh2SUdWMVkyeHBaR1ZoYmx4dUlDQWdJQ0FnSUNCamIyNXpkQ0J6ZFcwZ1BTQjJjeTV5WldSMVkyVW9LR0ZqWXl3Z2RtRnNMQ0JwWkhncElEMCtJR0ZqWXlBcklDaDJZV3dnS2lCM1pXbG5hSFJ6VzJsa2VGMHBJQ29xSURJc0lEQXBPMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdUV0YwYUM1emNYSjBLSE4xYlNrN1hHNGdJQ0FnSUNCOU8xeHVJQ0I5WEc1OVhHNGlYWDA9IiwiLyoqXG4gKiBEZW5vdGVzIGEgdmVjdG9yIG9mIGZsb2F0aW5nIHBvaXQgdmFsdWVzLlxuICpcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBWZWN0b3JcbiAqIEBleHRlbmRzIHtGbG9hdDMyQXJyYXl9XG4gKi9cbmV4cG9ydCBjbGFzcyBWZWN0b3IgZXh0ZW5kcyBGbG9hdDMyQXJyYXkge1xufVxuLyoqXG4gKiBEZW5vdGVzIGEgdHdvLWRpbWVuc2lvbmFsIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgTWF0cml4XG4gKiBAZXh0ZW5kcyB7QXJyYXk8VmVjdG9yPn1cbiAqL1xuZXhwb3J0IGNsYXNzIE1hdHJpeCBleHRlbmRzIEFycmF5IHtcbn1cbi8qKlxuICogRGVub3RlcyBjYXJ0ZXNpYW4gY29vcmRpbmF0ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQGNsYXNzIENvb3JkaW5hdGVzXG4gKiBAZXh0ZW5kcyB7TWF0cml4fVxuICovXG5leHBvcnQgY2xhc3MgQ29vcmRpbmF0ZXMgZXh0ZW5kcyBNYXRyaXgge1xufVxuLyoqXG4gKiBEZW5vdGVzIGFuIGFycmF5IG9mIGFyYml0cmFyeS10eXBlZCB2ZWN0b3JzLlxuICpcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBWZWN0b3JzXG4gKiBAZXh0ZW5kcyB7QXJyYXk8YW55Pn1cbiAqL1xuZXhwb3J0IGNsYXNzIFZlY3RvcnMgZXh0ZW5kcyBBcnJheSB7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkSGx3WlMxa1pXTnNZWEpoZEdsdmJuTXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMGVYQmxMV1JsWTJ4aGNtRjBhVzl1Y3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkZRVHM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEU5QlFVOHNUVUZCVHl4VFFVRlJMRmxCUVZrN1EwRkJSenRCUVVVelF6czdPenM3TzBkQlRVYzdRVUZEU0N4TlFVRk5MRTlCUVU4c1RVRkJUeXhUUVVGUkxFdEJRV0U3UTBGQlJ6dEJRVVUxUXpzN096czdPMGRCVFVjN1FVRkRTQ3hOUVVGTkxFOUJRVThzVjBGQldTeFRRVUZSTEUxQlFVMDdRMEZCUnp0QlFVVXhRenM3T3pzN08wZEJUVWM3UVVGRFNDeE5RVUZOTEU5QlFVOHNUMEZCVVN4VFFVRlJMRXRCUVZVN1EwRkJSeUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0FxSUdGeklFUkhJR1p5YjIwZ0oyUmhkR0ZuY205ckxXRndhUzlrWnljN1hHNWNiaThxS2x4dUlDb2dSR1Z1YjNSbGN5QmhJSFpsWTNSdmNpQnZaaUJtYkc5aGRHbHVaeUJ3YjJsMElIWmhiSFZsY3k1Y2JpQXFYRzRnS2lCQVpYaHdiM0owWEc0Z0tpQkFZMnhoYzNNZ1ZtVmpkRzl5WEc0Z0tpQkFaWGgwWlc1a2N5QjdSbXh2WVhRek1rRnljbUY1ZlZ4dUlDb3ZYRzVsZUhCdmNuUWdZMnhoYzNNZ1ZtVmpkRzl5SUdWNGRHVnVaSE1nUm14dllYUXpNa0Z5Y21GNUlIdDlYRzVjYmk4cUtseHVJQ29nUkdWdWIzUmxjeUJoSUhSM2J5MWthVzFsYm5OcGIyNWhiQ0J0WVhSeWFYZ3VYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUdOc1lYTnpJRTFoZEhKcGVGeHVJQ29nUUdWNGRHVnVaSE1nZTBGeWNtRjVQRlpsWTNSdmNqNTlYRzRnS2k5Y2JtVjRjRzl5ZENCamJHRnpjeUJOWVhSeWFYZ2daWGgwWlc1a2N5QkJjbkpoZVR4V1pXTjBiM0krSUh0OVhHNWNiaThxS2x4dUlDb2dSR1Z1YjNSbGN5QmpZWEowWlhOcFlXNGdZMjl2Y21ScGJtRjBaWE11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FHTnNZWE56SUVOdmIzSmthVzVoZEdWelhHNGdLaUJBWlhoMFpXNWtjeUI3VFdGMGNtbDRmVnh1SUNvdlhHNWxlSEJ2Y25RZ1kyeGhjM01nUTI5dmNtUnBibUYwWlhNZ1pYaDBaVzVrY3lCTllYUnlhWGdnZTMxY2JseHVMeW9xWEc0Z0tpQkVaVzV2ZEdWeklHRnVJR0Z5Y21GNUlHOW1JR0Z5WW1sMGNtRnllUzEwZVhCbFpDQjJaV04wYjNKekxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUJqYkdGemN5QldaV04wYjNKelhHNGdLaUJBWlhoMFpXNWtjeUI3UVhKeVlYazhZVzU1UG4xY2JpQXFMMXh1Wlhod2IzSjBJR05zWVhOeklGWmxZM1J2Y25NZ1pYaDBaVzVrY3lCQmNuSmhlVHhoYm5rK0lIdDlYRzVjYmk4cUtseHVJQ29nUkdWdWIzUmxjeUJoSUdScFkzUnBiMjVoY25rZ1kyOXVkR0ZwYm1sdVp5Qm1kVzVqZEdsdmJpQnZjSFJwYjI1ekxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUIwZVhCbElFOXdkR2x2Ym5OY2JpQXFMMXh1Wlhod2IzSjBJSFI1Y0dVZ1QzQjBhVzl1Y3lBOUlIdGJibUZ0WlRvZ2MzUnlhVzVuWFRvZ1lXNTVmVHRjYmx4dUx5b3FYRzRnS2lCRVpXNXZkR1Z6SUdOMWMzUnZiU0JrYVhOMFlXNWpaU0J0WlhSeWFXTWdZbVYwZDJWbGJpQjBhR1VnZEhkdklHZHBkbVZ1SUhabFkzUnZjbk11WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIUjVjR1VnUkdsemRHRnVZMlZOWlhSeWFXTmNiaUFxSUVCd1lYSmhiU0I3WVc1NWZTQjJNU0JVYUdVZ1ptbHljM1FnZG1WamRHOXlMbHh1SUNvZ1FIQmhjbUZ0SUh0aGJubDlJSFl5SUZSb1pTQnpaV052Ym1RZ2RtVmpkRzl5TGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeWZTQkVhWE4wWVc1alpTQmlaWFIzWldWdUlIUm9aWE5sSUhSM2J5QjJaV04wYjNKekxseHVJQ292WEc1bGVIQnZjblFnZEhsd1pTQkVhWE4wWVc1alpVMWxkSEpwWXlBOUlDaDJNVG9nWVc1NUxDQjJNam9nWVc1NUtTQTlQaUFvYm5WdFltVnlLVHRjYmx4dUx5b3FYRzRnS2lCRVpXNXZkR1Z6SUdFZ2MybHRjR3hsSUhOMGNtbHVaeUIwYnlCemRISnBibWNnWkdsamRHbHZibUZ5ZVM1Y2JpQXFYRzRnS2lCQVpYaHdiM0owWEc0Z0tpQkFkSGx3WlNCVGRISnBibWRFYVdOMGFXOXVZWEo1WEc0Z0tpOWNibVY0Y0c5eWRDQjBlWEJsSUZOMGNtbHVaMFJwWTNScGIyNWhjbmtnUFNCN1cydGxlVG9nYzNSeWFXNW5YVG9nYzNSeWFXNW5mVHRjYmx4dVhHNWxlSEJ2Y25RZ2RIbHdaU0JEYjJ4MWJXNUpibkIxZEU5d2RHbHZibk1nUFNCN1hHNGdJQ0FnWm1sc2RHVnlQem9nS0dOdmJEb2dSRWN1UTI5c2RXMXVLU0E5UGlCaWIyOXNaV0Z1SUh3Z2JuVnNiRHRjYm4wN1hHNGlYWDA9IiwiaW1wb3J0IHsgVmVjdG9yIH0gZnJvbSAnLi90eXBlLWRlY2xhcmF0aW9ucyc7XG5pbXBvcnQgeyByYW5kb21GbG9hdCwgcmFuZG9tSW50IH0gZnJvbSAnLi9yYW5kb20nO1xuLyoqXG4gKiBBc3NlcnRzIGEgY29uZGl0aW9uIGJ5IHRocm93aW5nIGFuIEVycm9yLlxuICpcbiAqIEBleHBvcnRcbiAqIEBwYXJhbSB7Ym9vbGVhbn0gW2NvbmRpdGlvbj1mYWxzZV0gQ29uZGl0aW9uIHRvIGFzc2VydC5cbiAqIEBwYXJhbSB7c3RyaW5nfSBbbWVzc2FnZT0nQXNzZXJ0aW9uIGVycm9yLiddIE1lc3NhZ2UgdG8gb3V0cHV0LlxuICogQHRocm93cyB7RXJyb3J9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnQoY29uZGl0aW9uID0gZmFsc2UsIG1lc3NhZ2UgPSAnQXNzZXJ0aW9uIGVycm9yLicpIHtcbiAgICBpZiAoIWNvbmRpdGlvbilcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xufVxuLyoqXG4gKiBDcmVhdGVzIG5ldyB0d28tZGltZW5zaW9uYWwgYXJyYXkgYW5kIGZpbGxzIGl0IHdpdGggdGhlIHZhbHVlIGdpdmVuLlxuICpcbiAqIEBwYXJhbSB7bnVtYmVyfSBkaW1lbnNpb24xIFRoZSBmaXJzdCBkaW1lbnNpb24gb2YgdGhlIGNvb3JkaW5hdGVzIChudW1iZXIgb2Ygcm93cykuXG4gKiBAcGFyYW0ge251bWJlcn0gZGltZW5zaW9uMiBUaGUgc2Vjb25kIGRpbWVuc2lvbiBvZiB0aGUgY29vcmRpbmF0ZXMgKG51bWJlciBvZiBjb2x1bW5zKS5cbiAqIEBwYXJhbSB7bnVtYmVyfSBbZmlsbD0wXSBBIHZhbHVlIHRvIGZpbGwgdGhlIGNvb3JkaW5hdGVzIHdpdGguXG4gKiBAcmV0dXJuIHtDb29yZGluYXRlc30gQSB0d28tZGltZW5zaW9uYWwgZmlsbGVkIHdpdGggdGhlIHZhbHVlIGdpdmVuLlxuICogQHRvZG8gTWlnaHQgYmUgc2xvdyBzaW5jZSB1c2VkIEFycmF5Lm1hcC4gUHJvYmFibHkgbmVlZHMgcGVyZm9ybWFuY2UgcmV2aXNpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMiwgZmlsbCA9IDApIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KGRpbWVuc2lvbjEpLmZpbGwoZmlsbCkubWFwKCgpID0+IChuZXcgVmVjdG9yKGRpbWVuc2lvbjIpLmZpbGwoZmlsbCkpKTtcbn1cbi8qKlxuICogVHJhbnNwb3NlIG1hdHJpeC5cbiAqXG4gKiBAZXhwb3J0XG4gKiBAcGFyYW0ge01hdHJpeH0gbWF0cml4IFRoZSBtYXRyaXggdG8gYmUgdHJhbnNwb3NlZC5cbiAqIEByZXR1cm4ge01hdHJpeH0gVHJhbnNwb3NlZCBtYXRyaXguXG4gKiBAdG9kbyBNaWdodCBiZSBzbG93IHNpbmNlIHVzZWQgQXJyYXkubWFwLiBQcm9iYWJseSBuZWVkcyBwZXJmb3JtYW5jZSByZXZpc2lvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zcG9zZU1hdHJpeChtYXRyaXgpIHtcbiAgICByZXR1cm4gbmV3IEFycmF5KG1hdHJpeFswXS5sZW5ndGgpLmZpbGwoMClcbiAgICAgICAgLm1hcCgoXywgaSkgPT4gKG5ldyBWZWN0b3IobWF0cml4Lmxlbmd0aCkuZmlsbCgwKS5tYXAoKF8sIGopID0+IChtYXRyaXhbal1baV0pKSkpO1xufVxuLyoqXG4gKiBBZGRzIHR3byB2ZWN0b3JzIHdpdGggdGhlIHNlY29uZCBvbmUgdG8gYmUgbXVsdGlwbGllZCBieSB0aGUgZ2l2ZW4gcmF0aW8uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gcSBUaGUgc2Vjb25kIHZlY3RvciB0byBhZGQuXG4gKiBAcGFyYW0ge251bWJlcn0gW211bHRpcGxpZXI9MV0gQSBtdWx0aXBsaWVyIHRvIGJlIHVzZWQgYmVmb3JlIHRoZSBzZWNvbmQgdmVjdG9yIGlzIGFkZGVkLlxuICogQHJldHVybiB7VmVjdG9yfSBOZXcgdmVjdG9yIGNvbnRhaW5lZCB0aGUgcmVzdWx0IG9mIG9wZXJhdGlvbiBwK211bHRpcGxpZXIqcS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckFkZChwLCBxLCBtdWx0aXBsaWVyID0gMSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IHAubGVuZ3RoO1xuICAgIGFzc2VydChuSXRlbXMgPT0gcS5sZW5ndGgsICdWZWN0b3IgbGVuZ3RocyBkbyBub3QgbWF0Y2guJyk7XG4gICAgY29uc3QgdG90YWwgPSBuZXcgVmVjdG9yKG5JdGVtcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwLmxlbmd0aDsgKytpKVxuICAgICAgICB0b3RhbFtpXSA9IHBbaV0gKyBtdWx0aXBsaWVyICogcVtpXTtcbiAgICByZXR1cm4gdG90YWw7XG59XG4vKipcbiAqIFN1bXMgdGhlIHZlY3RvcidzIGl0ZW1zLlxuICpcbiAqIEBwYXJhbSB7VmVjdG9yfSB2IFRoZSB2ZWN0b3IgdG8gYmUgc3VtbWVkLlxuICogQHJldHVybiB7bnVtYmVyfSBUaGUgdmVjdG9yJ3MgaXRlbXMgc3VtLlxuICovXG5mdW5jdGlvbiBpdGVtc1N1bSh2KSB7XG4gICAgbGV0IHRvdGFsID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsICs9IHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuLyoqXG4gKiBTdXFhcmVzIHRoZSB2ZWN0b3IncyBpdGVtcy5cbiAqXG4gKiBAcGFyYW0ge1ZlY3Rvcn0gdiBUaGUgdmVjdG9yIHRvIHNxdWFyZS5cbiAqIEByZXR1cm4ge1ZlY3Rvcn0gQSBuZXcgdmVjdG9yIGNvbnRhaW5pbmcgdGhlIG9yaWdpbmFsJ3MgaXRlbXMgc3F1YXJlZC5cbiAqL1xuZnVuY3Rpb24gdmVjdG9yU3F1YXJlKHYpIHtcbiAgICBjb25zdCBuSXRlbXMgPSB2Lmxlbmd0aDtcbiAgICBjb25zdCB0b3RhbCA9IG5ldyBWZWN0b3Iobkl0ZW1zKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHYubGVuZ3RoOyArK2kpXG4gICAgICAgIHRvdGFsW2ldID0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIHRvdGFsO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3Rvckxlbmd0aCh2KSB7XG4gICAgbGV0IHNxclN1bSA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2Lmxlbmd0aDsgaSsrKVxuICAgICAgICBzcXJTdW0gKz0gdltpXSAqIHZbaV07XG4gICAgcmV0dXJuIE1hdGguc3FydChzcXJTdW0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHZlY3RvckRvdFByb2R1Y3QodjEsIHYyKSB7XG4gICAgaWYgKHYxLmxlbmd0aCAhPSB2Mi5sZW5ndGgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGRpbWVuc2lvbmFsaXR5IG9mIHRoZSB2ZWN0b3JzIG11c3QgbWF0Y2gnKTtcbiAgICBsZXQgcHJvZCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2MS5sZW5ndGg7IGkrKylcbiAgICAgICAgcHJvZCArPSB2MVtpXSAqIHYyW2ldO1xuICAgIHJldHVybiBwcm9kO1xufVxuLyoqXG4gKiBDcmVhdGVzIGEgbWF0cml4IGZpbGxlZCB3aXRoIHJhbmRvbSBmbG9hdGluZyBwb2ludCB2YWx1ZXMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjEgVGhlIGZpcnN0IGRpbWVuc2lvbiBvZiB0aGUgbWF0cml4LlxuICogQHBhcmFtIHtudW1iZXJ9IGRpbWVuc2lvbjIgVGhlIHNlY29uZCBkaW1lbnNpb24gb2YgdGhlIG1hdHJpeC5cbiAqIEBwYXJhbSB7bnVtYmVyfSBbc2NhbGU9MS5dIE1heCB2YWx1ZSBnaXZlbiBieSByYW5kb20gZ2VuZXJhdG9yLlxuICogQHJldHVybiB7TWF0cml4fSBBIG5ldyBtYXRyaXggZmlsbGVkIHdpdGggcmFuZG9tIGZsb2F0aW5nIHBvaW50ICB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaWxsUmFuZG9tTWF0cml4KGRpbWVuc2lvbjEsIGRpbWVuc2lvbjIsIHNjYWxlID0gMS4pIHtcbiAgICBjb25zdCBtYXRyaXggPSBpbml0Q29vcmRpbmF0ZXMoZGltZW5zaW9uMSwgZGltZW5zaW9uMik7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkaW1lbnNpb24xOyArK2kpIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBkaW1lbnNpb24yOyArK2opXG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSByYW5kb21GbG9hdChzY2FsZSk7XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXg7XG59XG4vKipcbiAqIENhbGN1bGF0ZXMgRXVjbGlkZWFuIGRpc3RhbmNlIGJldHdlZW4gdHdvIHZlY3RvcnMuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IHAgVGhlIGZpcnN0IHZlY3Rvci5cbiAqIEBwYXJhbSB7VmVjdG9yfSBxIFRoZSBzZWNvbmQgdmVjdG9yLlxuICogQHJldHVybiB7bnVtYmVyfSBFdWNsaWRlYW4gZGlzdGFuY2UgYmV0d2VlbiB0aGUgZ2l2ZW4gdmVjdG9ycy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbGN1bGF0ZUV1Y2xpZGVhbkRpc3RhbmNlKHAsIHEpIHtcbiAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICBjb25zdCBsZW4gPSBwLmxlbmd0aDtcbiAgICBpZiAobGVuICE9PSBxLmxlbmd0aClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgZGltZW5zaW9uYWxpdHkgb2YgdGhlIHZlY3RvcnMgbXVzdCBtYXRjaCcpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyArK2kpXG4gICAgICAgIHJlc3VsdCArPSBNYXRoLnBvdygocFtpXSAtIHFbaV0pLCAyKTtcbiAgICByZXR1cm4gTWF0aC5zcXJ0KHJlc3VsdCk7XG59XG4vKipcbiAqIENyZWF0ZXMgYSBkaXN0YW5jZSBtYXRyaXggdXNpbmcgYSBjdXN0b20gZGlzdGFuY2UgZnVuY3Rpb24uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3JzfSBkYXRhIElucHV0IHZlY3RvcnMgdG8gY2FsY3VsYXRlIGRpc3RhbmNlcy5cbiAqIEBwYXJhbSB7RGlzdGFuY2VNZXRyaWN9IGRpc3RhbmNlIEN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqIEByZXR1cm4ge01hdHJpeH0gQ2FsY3VsYXRlZCBjdXN0b20gZGlzdGFuY2UgbWF0cml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY0Rpc3RhbmNlTWF0cml4KGRhdGEsIGRpc3RhbmNlKSB7XG4gICAgY29uc3Qgbkl0ZW1zID0gZGF0YS5sZW5ndGg7XG4gICAgY29uc3QgbWF0cml4ID0gaW5pdENvb3JkaW5hdGVzKG5JdGVtcywgbkl0ZW1zLCAwKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5JdGVtczsgKytpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IG5JdGVtczsgKytqKSB7XG4gICAgICAgICAgICBjb25zdCBkID0gKGRhdGFbaV0gPT0gbnVsbCkgfHwgKGRhdGFbal0gPT0gbnVsbCkgPyAwIDogZGlzdGFuY2UoZGF0YVtpXSwgZGF0YVtqXSk7XG4gICAgICAgICAgICBtYXRyaXhbaV1bal0gPSBtYXRyaXhbal1baV0gPSBkO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBtYXRyaXg7XG59XG4vKipcbiAqIENyZWF0ZXMgYSBkaXN0YW5jZSBtYXRyaXggdXNpbmcgYSBjdXN0b20gZGlzdGFuY2UgZnVuY3Rpb24uXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3JzfSBkYXRhIElucHV0IHZlY3RvcnMgdG8gY2FsY3VsYXRlIGRpc3RhbmNlcy5cbiAqIEBwYXJhbSB7RGlzdGFuY2VNZXRyaWN9IGRpc3RhbmNlIEN1c3RvbSBkaXN0YW5jZSBmdW5jdGlvbi5cbiAqIEByZXR1cm4ge01hdHJpeH0gQ2FsY3VsYXRlZCBjdXN0b20gZGlzdGFuY2UgbWF0cml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FsY05vcm1hbGl6ZWREaXN0YW5jZU1hdHJpeChkYXRhLCBkaXN0YW5jZSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IGRhdGEubGVuZ3RoO1xuICAgIGNvbnN0IG1hdHJpeCA9IGluaXRDb29yZGluYXRlcyhuSXRlbXMsIG5JdGVtcywgMCk7XG4gICAgbGV0IG1heCA9IE51bWJlci5NSU5fVkFMVUU7XG4gICAgbGV0IG1pbiA9IE51bWJlci5NQVhfVkFMVUU7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuSXRlbXM7ICsraSkge1xuICAgICAgICBmb3IgKGxldCBqID0gaTsgaiA8IG5JdGVtczsgKytqKSB7XG4gICAgICAgICAgICBjb25zdCBkID0gKGRhdGFbaV0gPT0gbnVsbCkgfHwgKGRhdGFbal0gPT0gbnVsbCB8fCBpID09PSBqKSA/IDAgOiBkaXN0YW5jZShkYXRhW2ldLCBkYXRhW2pdKTtcbiAgICAgICAgICAgIG1hdHJpeFtpXVtqXSA9IG1hdHJpeFtqXVtpXSA9IGQ7XG4gICAgICAgICAgICBpZiAoZCA+IG1heClcbiAgICAgICAgICAgICAgICBtYXggPSBkO1xuICAgICAgICAgICAgaWYgKGQgPCBtaW4pXG4gICAgICAgICAgICAgICAgbWluID0gZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5JdGVtczsgKytpKSB7XG4gICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IG5JdGVtczsgKytqKVxuICAgICAgICAgICAgbWF0cml4W2ldW2pdID0gbWF0cml4W2pdW2ldID0gKG1hdHJpeFtpXVtqXSAtIG1pbikgLyAobWF4IC0gbWluKTtcbiAgICB9XG4gICAgcmV0dXJuIG1hdHJpeDtcbn1cbi8qKiBHZW5lcmF0ZXMgYXJyYXkgZnJvbSBhIHJhbmdlIFtiZWdpbjsgZW5kXSBvciBbYmVnaW47IGVuZCkgaWYgZW5kRXhjbHVzaXZlLiAqKi9cbmV4cG9ydCBmdW5jdGlvbiBnZW5SYW5nZShiZWdpbiwgZW5kLCBlbmRFeGNsdXNpdmUgPSBmYWxzZSkge1xuICAgIGNvbnN0IG5JdGVtcyA9IGVuZCAtIGJlZ2luICsgKGVuZEV4Y2x1c2l2ZSA/IDAgOiAxKTtcbiAgICBjb25zdCBzZXJpZXMgPSBuZXcgSW50MzJBcnJheShuSXRlbXMpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbkl0ZW1zOyArK2kpXG4gICAgICAgIHNlcmllc1tpXSA9IGJlZ2luICsgaTtcbiAgICByZXR1cm4gc2VyaWVzO1xufVxuLyoqXG4gKiBSZXR1cm5zIG9yZGVyIG9mIHZhbHVlcyBhcyBpZiB0aGV5IGFyZSBzb3J0ZWQuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHthbnlbXX0gdmFsdWVzIElucHV0IGFycmF5LlxuICogQHBhcmFtIHtib29sZWFufSBbcmV2ZXJzZT1mYWxzZV0gV2hldGhlciB0byByZXR1cm4gcmV2ZXJzZWQgb3JkZXIuXG4gKiBAcmV0dXJuIHtudW1iZXJbXX0gVGhlIG9yZGVyIGNvbXB1dGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYXJnU29ydCh2YWx1ZXMsIHJldmVyc2UgPSBmYWxzZSkge1xuICAgIGNvbnN0IHNvcnRmbiA9IHJldmVyc2UgPyAoYSwgYikgPT4gKGJbMF0gLSBhWzBdKSA6IChhLCBiKSA9PiAoYVswXSAtIGJbMF0pO1xuICAgIGNvbnN0IGRlY29yID0gKHYsIGkpID0+IFt2LCBpXTsgLy8gc2V0IGluZGV4IHRvIHZhbHVlXG4gICAgY29uc3QgdW5kZWNvciA9IChhKSA9PiBhWzFdOyAvLyBsZWF2ZSBvbmx5IGluZGV4XG4gICAgY29uc3QgX2FyZ3NvcnQgPSAoYXJyKSA9PiBhcnIubWFwKGRlY29yKS5zb3J0KHNvcnRmbikubWFwKHVuZGVjb3IpO1xuICAgIHJldHVybiBfYXJnc29ydCh2YWx1ZXMpO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBpbmRleGVzIG9mIHRoZSBtb3N0IGRpdmVyc2Ugb2JqZWN0cyBhY2NvcmRpbmcgdG8gdGhlIGRpc3QgZnVuY3Rpb25cbiAqIEBwYXJhbSB7bnVtYmVyfSBsZW5ndGggdG90YWwgbnVtYmVyIG9mIG9iamVjdHNcbiAqIEBwYXJhbSB7bnVtYmVyfSBuIG51bWJlciBvZiBkaXZlcnNlIGVsZW1lbnRzIHRvIGZpbmRcbiAqIEBwYXJhbSB7KGkxOiBudW1iZXIsIGkyOiBudW1iZXIpID0+IG51bWJlcn0gZGlzdCBhIGZ1bmN0aW9uIHdoaWNoIGNhbGN1bGF0ZXMgZGlzdGFuY2UgYmV0d2VlblxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR3byBvYmplY3RzIHVzaW5nIHRoZWlyIGluZGV4ZXNcbiAqIEByZXR1cm5zIHtudW1iZXJbXX0gVGhlIGluZGV4ZXMgb2YgdGhlIG1vc3QgZGl2ZXJzZSBvYmplY3RzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXREaXZlcnNlU3Vic2V0KGxlbmd0aCwgbiwgZGlzdCkge1xuICAgIGZ1bmN0aW9uIG1heEJ5KHZhbHVlcywgb3JkZXJCeSkge1xuICAgICAgICBsZXQgbWF4VmFsdWUgPSBudWxsO1xuICAgICAgICBsZXQgbWF4T3JkZXJCeSA9IG51bGw7XG4gICAgICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB2YWx1ZXMpIHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRPcmRlckJ5ID0gb3JkZXJCeShlbGVtZW50KTtcbiAgICAgICAgICAgIGlmIChtYXhPcmRlckJ5ID09IG51bGwgfHwgZWxlbWVudE9yZGVyQnkgPiBtYXhPcmRlckJ5KSB7XG4gICAgICAgICAgICAgICAgbWF4VmFsdWUgPSBlbGVtZW50O1xuICAgICAgICAgICAgICAgIG1heE9yZGVyQnkgPSBlbGVtZW50T3JkZXJCeTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbWF4VmFsdWU7XG4gICAgfVxuICAgIGNvbnN0IHN1YnNldCA9IFtyYW5kb21JbnQobGVuZ3RoIC0gMSldO1xuICAgIGNvbnN0IGNvbXBsZW1lbnQgPSBuZXcgU2V0KCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7ICsraSkge1xuICAgICAgICBpZiAoIXN1YnNldC5pbmNsdWRlcyhpKSlcbiAgICAgICAgICAgIGNvbXBsZW1lbnQuYWRkKGkpO1xuICAgIH1cbiAgICB3aGlsZSAoc3Vic2V0Lmxlbmd0aCA8IG4pIHtcbiAgICAgICAgY29uc3QgaWR4ID0gbWF4QnkoY29tcGxlbWVudC52YWx1ZXMoKSwgKGkpID0+IE1hdGgubWluLmFwcGx5KE1hdGgsIHN1YnNldC5tYXAoZnVuY3Rpb24gKHZhbCwgaW5kZXgpIHtcbiAgICAgICAgICAgIHJldHVybiBkaXN0KGksIHZhbCk7XG4gICAgICAgIH0pKSk7XG4gICAgICAgIGlmIChpZHgpIHtcbiAgICAgICAgICAgIHN1YnNldC5wdXNoKGlkeCk7XG4gICAgICAgICAgICBjb21wbGVtZW50LmRlbGV0ZShpZHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBzdWJzZXQ7XG59XG4vKipcbiAqIFJldHVybnMgbm9ybWFsaXplZCB2ZWN0b3IuXG4gKlxuICogQGV4cG9ydFxuICogQHBhcmFtIHtWZWN0b3J9IGRhdGEgbnVtZXJpY2FsIGFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemUoZGF0YSkge1xuICAgIGNvbnN0IGxlbiA9IGRhdGEubGVuZ3RoO1xuICAgIGxldCBzdW0gPSAwO1xuICAgIGxldCBzdW1PZlNxdWFyZXMgPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyArK2kpIHtcbiAgICAgICAgc3VtICs9IGRhdGFbaV07XG4gICAgICAgIHN1bU9mU3F1YXJlcyArPSBNYXRoLnBvdyhkYXRhW2ldLCAyKTtcbiAgICB9XG4gICAgY29uc3QgbWVhbiA9IHN1bSAvIGxlbjtcbiAgICBjb25zdCBzdGREZXZJbnZlcnNlID0gMS4wIC8gTWF0aC5zcXJ0KHN1bU9mU3F1YXJlcyAvIGxlbiAtIE1hdGgucG93KG1lYW4sIDIpKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgKytpKVxuICAgICAgICBkYXRhW2ldID0gKGRhdGFbaV0gLSBtZWFuKSAqIHN0ZERldkludmVyc2U7XG4gICAgcmV0dXJuIGRhdGE7XG59XG4vKipcbiAqIEZpbmRzIHNldCBkaWZmZXJlbmNlIGJldHdlZW4gdHdvIGxpc3RzLlxuICogQHBhcmFtIHthbnlbXX0gYSBUaGUgZmlyc3QgbGlzdC5cbiAqIEBwYXJhbSB7YW55W119IGIgVGhlIHNlY29uZCBsaXN0LlxuICogQHJldHVybiB7YW55W119XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXREaWZmZXJlbmNlKGEsIGIpIHtcbiAgICBjb25zdCBiU2V0ID0gbmV3IFNldChiKTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShuZXcgU2V0KGEuZmlsdGVyKCh4KSA9PiAhYlNldC5oYXMoeCkpKS52YWx1ZXMoKSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkbVZqZEc5eUxXOXdaWEpoZEdsdmJuTXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKMlpXTjBiM0l0YjNCbGNtRjBhVzl1Y3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRU3hQUVVGUExFVkJRVk1zVFVGQlRTeEZRVUYxUXl4TlFVRk5MSEZDUVVGeFFpeERRVUZETzBGQlEzcEdMRTlCUVU4c1JVRkJReXhYUVVGWExFVkJRVVVzVTBGQlV5eEZRVUZETEUxQlFVMHNWVUZCVlN4RFFVRkRPMEZCUldoRU96czdPenM3TzBkQlQwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1RVRkJUU3hEUVVGRExGbEJRWEZDTEV0QlFVc3NSVUZCUlN4VlFVRnJRaXhyUWtGQmEwSTdTVUZEY2tZc1NVRkJTU3hEUVVGRExGTkJRVk03VVVGRFdpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8wRkJRemRDTEVOQlFVTTdRVUZGUkRzN096czdPenM3UjBGUlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4bFFVRmxMRU5CUVVNc1ZVRkJhMElzUlVGQlJTeFZRVUZyUWl4RlFVRkZMRTlCUVdVc1EwRkJRenRKUVVOMFJpeFBRVUZQTEVsQlFVa3NTMEZCU3l4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEpRVUZKTEUxQlFVMHNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTNwR0xFTkJRVU03UVVGRlJEczdPenM3T3p0SFFVOUhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHVkJRV1VzUTBGQlF5eE5RVUZqTzBsQlF6VkRMRTlCUVU4c1NVRkJTU3hMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdVMEZEZGtNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFMUJRVTBzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRkRVlzUTBGQlF6dEJRVVZFT3pzN096czdPenRIUVZGSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEZOQlFWTXNRMEZCUXl4RFFVRlRMRVZCUVVVc1EwRkJVeXhGUVVGRkxHRkJRWEZDTEVOQlFVTTdTVUZEY0VVc1RVRkJUU3hOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXp0SlFVVjRRaXhOUVVGTkxFTkJRVU1zVFVGQlRTeEpRVUZKTEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc09FSkJRVGhDTEVOQlFVTXNRMEZCUXp0SlFVVXpSQ3hOUVVGTkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEUxQlFVMHNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRKUVVWcVF5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNN1VVRkRMMElzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFZRVUZWTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJSWFJETEU5QlFVOHNTMEZCU3l4RFFVRkRPMEZCUTJZc1EwRkJRenRCUVVWRU96czdPenRIUVV0SE8wRkJRMGdzVTBGQlV5eFJRVUZSTEVOQlFVTXNRMEZCVXp0SlFVTjZRaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZGWkN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU03VVVGREwwSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVZvUWl4UFFVRlBMRXRCUVVzc1EwRkJRenRCUVVObUxFTkJRVU03UVVGRlJEczdPenM3UjBGTFJ6dEJRVU5JTEZOQlFWTXNXVUZCV1N4RFFVRkRMRU5CUVZNN1NVRkROMElzVFVGQlRTeE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVONFFpeE5RVUZOTEV0QlFVc3NSMEZCUnl4SlFVRkpMRTFCUVUwc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVVZxUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU03VVVGREwwSXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmVrSXNUMEZCVHl4TFFVRkxMRU5CUVVNN1FVRkRaaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEZsQlFWa3NRMEZCUXl4RFFVRlRPMGxCUTNCRExFbEJRVWtzVFVGQlRTeEhRVUZYTEVOQlFVTXNRMEZCUXp0SlFVTjJRaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZYTEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVTdVVUZEZGtNc1RVRkJUU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGVFSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBGQlF6TkNMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzWjBKQlFXZENMRU5CUVVNc1JVRkJWU3hGUVVGRkxFVkJRVlU3U1VGRGNrUXNTVUZCU1N4RlFVRkZMRU5CUVVNc1RVRkJUU3hKUVVGSkxFVkJRVVVzUTBGQlF5eE5RVUZOTzFGQlEzaENMRTFCUVUwc1NVRkJTU3hMUVVGTExFTkJRVU1zT0VOQlFUaERMRU5CUVVNc1EwRkJRenRKUVVOc1JTeEpRVUZKTEVsQlFVa3NSMEZCVnl4RFFVRkRMRU5CUVVNN1NVRkRja0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCVnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUTNoRExFbEJRVWtzU1VGQlNTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzaENMRTlCUVU4c1NVRkJTU3hEUVVGRE8wRkJRMlFzUTBGQlF6dEJRVVZFT3pzN096czdPenRIUVZGSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVGRExGVkJRV3RDTEVWQlFVVXNWVUZCYTBJc1JVRkJSU3hSUVVGblFpeEZRVUZGTzBsQlEzcEdMRTFCUVUwc1RVRkJUU3hIUVVGSExHVkJRV1VzUTBGQlF5eFZRVUZWTEVWQlFVVXNWVUZCVlN4RFFVRkRMRU5CUVVNN1NVRkZka1FzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTnVReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1ZVRkJWU3hGUVVGRkxFVkJRVVVzUTBGQlF6dFpRVU5xUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NWMEZCVnl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wdEJRM0pETzBsQlEwUXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzTUVKQlFUQkNMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk03U1VGRE4wUXNTVUZCU1N4TlFVRk5MRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMllzVFVGQlRTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVWeVFpeEpRVUZKTEVkQlFVY3NTMEZCU3l4RFFVRkRMRU5CUVVNc1RVRkJUVHRSUVVOc1FpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRGhEUVVFNFF5eERRVUZETEVOQlFVTTdTVUZGYkVVc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRWRCUVVjc1JVRkJSU3hGUVVGRkxFTkJRVU03VVVGRE1VSXNUVUZCVFN4SlFVRkpMRk5CUVVFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVWtzUTBGQlF5eERRVUZCTEVOQlFVTTdTVUZGTDBJc1QwRkJUeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMEZCUXpOQ0xFTkJRVU03UVVGRlJEczdPenM3T3p0SFFVOUhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHdENRVUZyUWl4RFFVRkRMRWxCUVdFc1JVRkJSU3hSUVVGM1FqdEpRVU40UlN4TlFVRk5MRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETzBsQlF6TkNMRTFCUVUwc1RVRkJUU3hIUVVGSExHVkJRV1VzUTBGQlF5eE5RVUZOTEVWQlFVVXNUVUZCVFN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJSV3hFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkRMMElzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVN1dVRkRia01zVFVGQlRTeERRVUZETEVkQlFWY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTXhSaXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRUUVVOcVF6dExRVU5HTzBsQlEwUXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3pzN096czdPMGRCVDBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzTkVKQlFUUkNMRU5CUVVNc1NVRkJZU3hGUVVGRkxGRkJRWGRDTzBsQlEyeEdMRTFCUVUwc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTTdTVUZETTBJc1RVRkJUU3hOUVVGTkxFZEJRVWNzWlVGQlpTeERRVUZETEUxQlFVMHNSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGJFUXNTVUZCU1N4SFFVRkhMRWRCUVVjc1RVRkJUU3hEUVVGRExGTkJRVk1zUTBGQlF6dEpRVU16UWl4SlFVRkpMRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zVTBGQlV5eERRVUZETzBsQlF6TkNMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRExFVkJRVVU3VVVGREwwSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSVHRaUVVNdlFpeE5RVUZOTEVOQlFVTXNSMEZCVnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRGNrY3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZEYUVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUjBGQlJ6dG5Ra0ZCUlN4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRM0pDTEVsQlFVa3NRMEZCUXl4SFFVRkhMRWRCUVVjN1owSkJRVVVzUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0VFFVTjBRanRMUVVOR08wbEJRMFFzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTXZRaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTTdXVUZEYWtNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0TFFVTndSVHRKUVVORUxFOUJRVThzVFVGQlRTeERRVUZETzBGQlEyaENMRU5CUVVNN1FVRkZSQ3hyUmtGQmEwWTdRVUZEYkVZc1RVRkJUU3hWUVVGVkxGRkJRVkVzUTBGQlF5eExRVUZoTEVWQlFVVXNSMEZCVnl4RlFVRkZMRmxCUVZrc1IwRkJSeXhMUVVGTE8wbEJRM1pGTEUxQlFVMHNUVUZCVFN4SFFVRkhMRWRCUVVjc1IwRkJSeXhMUVVGTExFZEJRVWNzUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEY0VRc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeFZRVUZWTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1NVRkZkRU1zUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUlVGQlJTeEZRVUZGTEVOQlFVTTdVVUZETjBJc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEV0QlFVc3NSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkZlRUlzVDBGQlR5eE5RVUZOTEVOQlFVTTdRVUZEYUVJc1EwRkJRenRCUVVWRU96czdPenM3TzBkQlQwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1QwRkJUeXhEUVVGRExFMUJRV0VzUlVGQlJTeFBRVUZQTEVkQlFVY3NTMEZCU3p0SlFVTndSQ3hOUVVGTkxFMUJRVTBzUjBGQlJ5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJVU3hGUVVGRkxFTkJRVkVzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlVTeEZRVUZGTEVOQlFWRXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGRrY3NUVUZCVFN4TFFVRkxMRWRCUVVjc1EwRkJReXhEUVVGTkxFVkJRVVVzUTBGQlV5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEhGQ1FVRnhRanRKUVVOc1JTeE5RVUZOTEU5QlFVOHNSMEZCUnl4RFFVRkRMRU5CUVZFc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc2JVSkJRVzFDTzBsQlEzWkVMRTFCUVUwc1VVRkJVU3hIUVVGSExFTkJRVU1zUjBGQlZTeEZRVUZGTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZETVVVc1QwRkJUeXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdRVUZETVVJc1EwRkJRenRCUVVWRU96czdPenM3TzBkQlQwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1owSkJRV2RDTEVOQlFVTXNUVUZCWXl4RlFVRkZMRU5CUVZNc1JVRkJSU3hKUVVGM1F6dEpRVU5zUnl4VFFVRlRMRXRCUVVzc1EwRkJReXhOUVVGblF5eEZRVUZGTEU5QlFUaENPMUZCUXpkRkxFbEJRVWtzVVVGQlVTeEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVTndRaXhKUVVGSkxGVkJRVlVzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZGZEVJc1MwRkJTeXhOUVVGTkxFOUJRVThzU1VGQlNTeE5RVUZOTEVWQlFVVTdXVUZETlVJc1RVRkJUU3hqUVVGakxFZEJRVWNzVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRPMWxCUTNoRExFbEJRVWtzVlVGQlZTeEpRVUZKTEVsQlFVa3NTVUZCU1N4alFVRmpMRWRCUVVjc1ZVRkJWU3hGUVVGRk8yZENRVU55UkN4UlFVRlJMRWRCUVVjc1QwRkJUeXhEUVVGRE8yZENRVU51UWl4VlFVRlZMRWRCUVVjc1kwRkJZeXhEUVVGRE8yRkJRemRDTzFOQlEwWTdVVUZEUkN4UFFVRlBMRkZCUVZFc1EwRkJRenRKUVVOc1FpeERRVUZETzBsQlJVUXNUVUZCVFN4TlFVRk5MRWRCUVVjc1EwRkJReXhUUVVGVExFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRka01zVFVGQlRTeFZRVUZWTEVkQlFVY3NTVUZCU1N4SFFVRkhMRVZCUVVVc1EwRkJRenRKUVVVM1FpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUXk5Q0xFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOeVFpeFZRVUZWTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wdEJRM0pDTzBsQlJVUXNUMEZCVHl4TlFVRk5MRU5CUVVNc1RVRkJUU3hIUVVGSExFTkJRVU1zUlVGQlJUdFJRVU40UWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhMUVVGTExFTkJRMllzVlVGQlZTeERRVUZETEUxQlFVMHNSVUZCT0VJc1JVRkRMME1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NSVUZCUlN4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExGVkJRVk1zUjBGQlJ5eEZRVUZGTEV0QlFVczdXVUZEZUVRc1QwRkJUeXhKUVVGSkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTNSQ0xFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTlFMRWxCUVVrc1IwRkJSeXhGUVVGRk8xbEJRMUFzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRaUVVOcVFpeFZRVUZWTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xTkJRM2hDTzB0QlEwWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPenM3TzBkQlMwYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1UwRkJVeXhEUVVGRExFbEJRVms3U1VGRGNFTXNUVUZCVFN4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF6dEpRVU40UWl4SlFVRkpMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRFdpeEpRVUZKTEZsQlFWa3NSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkZja0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0UlFVTTFRaXhIUVVGSExFbEJRVWtzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTJZc1dVRkJXU3hKUVVGSkxGTkJRVUVzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkpMRU5CUVVNc1EwRkJRU3hEUVVGRE8wdEJRemxDTzBsQlJVUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUTBGQlF6dEpRVU4yUWl4TlFVRk5MR0ZCUVdFc1IwRkJSeXhIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4WlFVRlpMRWRCUVVjc1IwRkJSeXhIUVVGSExGTkJRVUVzU1VGQlNTeEZRVUZKTEVOQlFVTXNRMEZCUVN4RFFVRkRMRU5CUVVNN1NVRkZkRVVzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTTdVVUZETVVJc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEdGQlFXRXNRMEZCUXp0SlFVVTNReXhQUVVGUExFbEJRVWtzUTBGQlF6dEJRVU5rTEVOQlFVTTdRVUZGUkRzN096czdSMEZMUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hoUVVGaExFTkJRVU1zUTBGQlVTeEZRVUZGTEVOQlFWRTdTVUZET1VNc1RVRkJUU3hKUVVGSkxFZEJRVWNzU1VGQlNTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRlRUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTnlSU3hEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lhVzF3YjNKMElIdE5ZWFJ5YVhnc0lGWmxZM1J2Y2l3Z1EyOXZjbVJwYm1GMFpYTXNJRlpsWTNSdmNuTXNJRVJwYzNSaGJtTmxUV1YwY21samZTQm1jbTl0SUNjdUwzUjVjR1V0WkdWamJHRnlZWFJwYjI1ekp6dGNibWx0Y0c5eWRDQjdjbUZ1Wkc5dFJteHZZWFFzSUhKaGJtUnZiVWx1ZEgwZ1puSnZiU0FuTGk5eVlXNWtiMjBuTzF4dVhHNHZLaXBjYmlBcUlFRnpjMlZ5ZEhNZ1lTQmpiMjVrYVhScGIyNGdZbmtnZEdoeWIzZHBibWNnWVc0Z1JYSnliM0l1WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIQmhjbUZ0SUh0aWIyOXNaV0Z1ZlNCYlkyOXVaR2wwYVc5dVBXWmhiSE5sWFNCRGIyNWthWFJwYjI0Z2RHOGdZWE56WlhKMExseHVJQ29nUUhCaGNtRnRJSHR6ZEhKcGJtZDlJRnR0WlhOellXZGxQU2RCYzNObGNuUnBiMjRnWlhKeWIzSXVKMTBnVFdWemMyRm5aU0IwYnlCdmRYUndkWFF1WEc0Z0tpQkFkR2h5YjNkeklIdEZjbkp2Y24xY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR0Z6YzJWeWRDaGpiMjVrYVhScGIyNDZJR0p2YjJ4bFlXNGdQU0JtWVd4elpTd2diV1Z6YzJGblpUb2djM1J5YVc1bklEMGdKMEZ6YzJWeWRHbHZiaUJsY25KdmNpNG5LU0I3WEc0Z0lHbG1JQ2doWTI5dVpHbDBhVzl1S1Z4dUlDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpaHRaWE56WVdkbEtUdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUc1bGR5QjBkMjh0WkdsdFpXNXphVzl1WVd3Z1lYSnlZWGtnWVc1a0lHWnBiR3h6SUdsMElIZHBkR2dnZEdobElIWmhiSFZsSUdkcGRtVnVMbHh1SUNwY2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZTQmthVzFsYm5OcGIyNHhJRlJvWlNCbWFYSnpkQ0JrYVcxbGJuTnBiMjRnYjJZZ2RHaGxJR052YjNKa2FXNWhkR1Z6SUNodWRXMWlaWElnYjJZZ2NtOTNjeWt1WEc0Z0tpQkFjR0Z5WVcwZ2UyNTFiV0psY24wZ1pHbHRaVzV6YVc5dU1pQlVhR1VnYzJWamIyNWtJR1JwYldWdWMybHZiaUJ2WmlCMGFHVWdZMjl2Y21ScGJtRjBaWE1nS0c1MWJXSmxjaUJ2WmlCamIyeDFiVzV6S1M1Y2JpQXFJRUJ3WVhKaGJTQjdiblZ0WW1WeWZTQmJabWxzYkQwd1hTQkJJSFpoYkhWbElIUnZJR1pwYkd3Z2RHaGxJR052YjNKa2FXNWhkR1Z6SUhkcGRHZ3VYRzRnS2lCQWNtVjBkWEp1SUh0RGIyOXlaR2x1WVhSbGMzMGdRU0IwZDI4dFpHbHRaVzV6YVc5dVlXd2dabWxzYkdWa0lIZHBkR2dnZEdobElIWmhiSFZsSUdkcGRtVnVMbHh1SUNvZ1FIUnZaRzhnVFdsbmFIUWdZbVVnYzJ4dmR5QnphVzVqWlNCMWMyVmtJRUZ5Y21GNUxtMWhjQzRnVUhKdlltRmliSGtnYm1WbFpITWdjR1Z5Wm05eWJXRnVZMlVnY21WMmFYTnBiMjR1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnBibWwwUTI5dmNtUnBibUYwWlhNb1pHbHRaVzV6YVc5dU1Ub2diblZ0WW1WeUxDQmthVzFsYm5OcGIyNHlPaUJ1ZFcxaVpYSXNJR1pwYkd3NklHNTFiV0psY2lBOUlEQXBPaUJEYjI5eVpHbHVZWFJsY3lCN1hHNGdJSEpsZEhWeWJpQnVaWGNnUVhKeVlYa29aR2x0Wlc1emFXOXVNU2t1Wm1sc2JDaG1hV3hzS1M1dFlYQW9LQ2tnUFQ0Z0tHNWxkeUJXWldOMGIzSW9aR2x0Wlc1emFXOXVNaWt1Wm1sc2JDaG1hV3hzS1NrcE8xeHVmVnh1WEc0dktpcGNiaUFxSUZSeVlXNXpjRzl6WlNCdFlYUnlhWGd1WEc0Z0tseHVJQ29nUUdWNGNHOXlkRnh1SUNvZ1FIQmhjbUZ0SUh0TllYUnlhWGg5SUcxaGRISnBlQ0JVYUdVZ2JXRjBjbWw0SUhSdklHSmxJSFJ5WVc1emNHOXpaV1F1WEc0Z0tpQkFjbVYwZFhKdUlIdE5ZWFJ5YVhoOUlGUnlZVzV6Y0c5elpXUWdiV0YwY21sNExseHVJQ29nUUhSdlpHOGdUV2xuYUhRZ1ltVWdjMnh2ZHlCemFXNWpaU0IxYzJWa0lFRnljbUY1TG0xaGNDNGdVSEp2WW1GaWJIa2dibVZsWkhNZ2NHVnlabTl5YldGdVkyVWdjbVYyYVhOcGIyNHVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCMGNtRnVjM0J2YzJWTllYUnlhWGdvYldGMGNtbDRPaUJOWVhSeWFYZ3BPaUJOWVhSeWFYZ2dlMXh1SUNCeVpYUjFjbTRnYm1WM0lFRnljbUY1S0cxaGRISnBlRnN3WFM1c1pXNW5kR2dwTG1acGJHd29NQ2xjYmlBZ0lDQXViV0Z3S0NoZkxDQnBLU0E5UGlBb2JtVjNJRlpsWTNSdmNpaHRZWFJ5YVhndWJHVnVaM1JvS1M1bWFXeHNLREFwTG0xaGNDZ29YeXdnYWlrZ1BUNGdLRzFoZEhKcGVGdHFYVnRwWFNrcEtTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1FXUmtjeUIwZDI4Z2RtVmpkRzl5Y3lCM2FYUm9JSFJvWlNCelpXTnZibVFnYjI1bElIUnZJR0psSUcxMWJIUnBjR3hwWldRZ1lua2dkR2hsSUdkcGRtVnVJSEpoZEdsdkxseHVJQ3BjYmlBcUlFQmxlSEJ2Y25SY2JpQXFJRUJ3WVhKaGJTQjdWbVZqZEc5eWZTQndJRlJvWlNCbWFYSnpkQ0IyWldOMGIzSWdkRzhnWVdSa0xseHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSjlJSEVnVkdobElITmxZMjl1WkNCMlpXTjBiM0lnZEc4Z1lXUmtMbHh1SUNvZ1FIQmhjbUZ0SUh0dWRXMWlaWEo5SUZ0dGRXeDBhWEJzYVdWeVBURmRJRUVnYlhWc2RHbHdiR2xsY2lCMGJ5QmlaU0IxYzJWa0lHSmxabTl5WlNCMGFHVWdjMlZqYjI1a0lIWmxZM1J2Y2lCcGN5QmhaR1JsWkM1Y2JpQXFJRUJ5WlhSMWNtNGdlMVpsWTNSdmNuMGdUbVYzSUhabFkzUnZjaUJqYjI1MFlXbHVaV1FnZEdobElISmxjM1ZzZENCdlppQnZjR1Z5WVhScGIyNGdjQ3R0ZFd4MGFYQnNhV1Z5S25FdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIyWldOMGIzSkJaR1FvY0RvZ1ZtVmpkRzl5TENCeE9pQldaV04wYjNJc0lHMTFiSFJwY0d4cFpYSTZJRzUxYldKbGNpQTlJREVwT2lCV1pXTjBiM0lnZTF4dUlDQmpiMjV6ZENCdVNYUmxiWE1nUFNCd0xteGxibWQwYUR0Y2JseHVJQ0JoYzNObGNuUW9ia2wwWlcxeklEMDlJSEV1YkdWdVozUm9MQ0FuVm1WamRHOXlJR3hsYm1kMGFITWdaRzhnYm05MElHMWhkR05vTGljcE8xeHVYRzRnSUdOdmJuTjBJSFJ2ZEdGc0lEMGdibVYzSUZabFkzUnZjaWh1U1hSbGJYTXBPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2djQzVzWlc1bmRHZzdJQ3NyYVNsY2JpQWdJQ0IwYjNSaGJGdHBYU0E5SUhCYmFWMGdLeUJ0ZFd4MGFYQnNhV1Z5SUNvZ2NWdHBYVHRjYmx4dUlDQnlaWFIxY200Z2RHOTBZV3c3WEc1OVhHNWNiaThxS2x4dUlDb2dVM1Z0Y3lCMGFHVWdkbVZqZEc5eUozTWdhWFJsYlhNdVhHNGdLbHh1SUNvZ1FIQmhjbUZ0SUh0V1pXTjBiM0o5SUhZZ1ZHaGxJSFpsWTNSdmNpQjBieUJpWlNCemRXMXRaV1F1WEc0Z0tpQkFjbVYwZFhKdUlIdHVkVzFpWlhKOUlGUm9aU0IyWldOMGIzSW5jeUJwZEdWdGN5QnpkVzB1WEc0Z0tpOWNibVoxYm1OMGFXOXVJR2wwWlcxelUzVnRLSFk2SUZabFkzUnZjaWs2SUc1MWJXSmxjaUI3WEc0Z0lHeGxkQ0IwYjNSaGJDQTlJREE3WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0IyTG14bGJtZDBhRHNnS3l0cEtWeHVJQ0FnSUhSdmRHRnNJQ3M5SUhaYmFWMDdYRzVjYmlBZ2NtVjBkWEp1SUhSdmRHRnNPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGTjFjV0Z5WlhNZ2RHaGxJSFpsWTNSdmNpZHpJR2wwWlcxekxseHVJQ3BjYmlBcUlFQndZWEpoYlNCN1ZtVmpkRzl5ZlNCMklGUm9aU0IyWldOMGIzSWdkRzhnYzNGMVlYSmxMbHh1SUNvZ1FISmxkSFZ5YmlCN1ZtVmpkRzl5ZlNCQklHNWxkeUIyWldOMGIzSWdZMjl1ZEdGcGJtbHVaeUIwYUdVZ2IzSnBaMmx1WVd3bmN5QnBkR1Z0Y3lCemNYVmhjbVZrTGx4dUlDb3ZYRzVtZFc1amRHbHZiaUIyWldOMGIzSlRjWFZoY21Vb2Rqb2dWbVZqZEc5eUtUb2dWbVZqZEc5eUlIdGNiaUFnWTI5dWMzUWdia2wwWlcxeklEMGdkaTVzWlc1bmRHZzdYRzRnSUdOdmJuTjBJSFJ2ZEdGc0lEMGdibVYzSUZabFkzUnZjaWh1U1hSbGJYTXBPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dkaTVzWlc1bmRHZzdJQ3NyYVNsY2JpQWdJQ0IwYjNSaGJGdHBYU0E5SUhaYmFWMGdLaUIyVzJsZE8xeHVYRzRnSUhKbGRIVnliaUIwYjNSaGJEdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUhabFkzUnZja3hsYm1kMGFDaDJPaUJXWldOMGIzSXBPaUJ1ZFcxaVpYSWdlMXh1SUNCc1pYUWdjM0Z5VTNWdE9pQnVkVzFpWlhJZ1BTQXdPMXh1SUNCbWIzSWdLR3hsZENCcE9pQnVkVzFpWlhJZ1BTQXdPeUJwSUR3Z2RpNXNaVzVuZEdnN0lHa3JLeWxjYmlBZ0lDQnpjWEpUZFcwZ0t6MGdkbHRwWFNBcUlIWmJhVjA3WEc0Z0lISmxkSFZ5YmlCTllYUm9Mbk54Y25Rb2MzRnlVM1Z0S1R0Y2JuMWNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSFpsWTNSdmNrUnZkRkJ5YjJSMVkzUW9kakU2SUZabFkzUnZjaXdnZGpJNklGWmxZM1J2Y2lrNklHNTFiV0psY2lCN1hHNGdJR2xtSUNoMk1TNXNaVzVuZEdnZ0lUMGdkakl1YkdWdVozUm9LVnh1SUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2lnblZHaGxJR1JwYldWdWMybHZibUZzYVhSNUlHOW1JSFJvWlNCMlpXTjBiM0p6SUcxMWMzUWdiV0YwWTJnbktUdGNiaUFnYkdWMElIQnliMlE2SUc1MWJXSmxjaUE5SURBN1hHNGdJR1p2Y2lBb2JHVjBJR2s2SUc1MWJXSmxjaUE5SURBN0lHa2dQQ0IyTVM1c1pXNW5kR2c3SUdrckt5bGNiaUFnSUNCd2NtOWtJQ3M5SUhZeFcybGRJQ29nZGpKYmFWMDdYRzRnSUhKbGRIVnliaUJ3Y205a08xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nWVNCdFlYUnlhWGdnWm1sc2JHVmtJSGRwZEdnZ2NtRnVaRzl0SUdac2IyRjBhVzVuSUhCdmFXNTBJSFpoYkhWbGN5NWNiaUFxWEc0Z0tpQkFaWGh3YjNKMFhHNGdLaUJBY0dGeVlXMGdlMjUxYldKbGNuMGdaR2x0Wlc1emFXOXVNU0JVYUdVZ1ptbHljM1FnWkdsdFpXNXphVzl1SUc5bUlIUm9aU0J0WVhSeWFYZ3VYRzRnS2lCQWNHRnlZVzBnZTI1MWJXSmxjbjBnWkdsdFpXNXphVzl1TWlCVWFHVWdjMlZqYjI1a0lHUnBiV1Z1YzJsdmJpQnZaaUIwYUdVZ2JXRjBjbWw0TGx4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlGdHpZMkZzWlQweExsMGdUV0Y0SUhaaGJIVmxJR2RwZG1WdUlHSjVJSEpoYm1SdmJTQm5aVzVsY21GMGIzSXVYRzRnS2lCQWNtVjBkWEp1SUh0TllYUnlhWGg5SUVFZ2JtVjNJRzFoZEhKcGVDQm1hV3hzWldRZ2QybDBhQ0J5WVc1a2IyMGdabXh2WVhScGJtY2djRzlwYm5RZ0lIWmhiSFZsY3k1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR1pwYkd4U1lXNWtiMjFOWVhSeWFYZ29aR2x0Wlc1emFXOXVNVG9nYm5WdFltVnlMQ0JrYVcxbGJuTnBiMjR5T2lCdWRXMWlaWElzSUhOallXeGxPaUJ1ZFcxaVpYSWdQU0F4TGlrNklFMWhkSEpwZUNCN1hHNGdJR052Ym5OMElHMWhkSEpwZUNBOUlHbHVhWFJEYjI5eVpHbHVZWFJsY3loa2FXMWxibk5wYjI0eExDQmthVzFsYm5OcGIyNHlLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR1JwYldWdWMybHZiakU3SUNzcmFTa2dlMXh1SUNBZ0lHWnZjaUFvYkdWMElHb2dQU0F3T3lCcUlEd2daR2x0Wlc1emFXOXVNanNnS3l0cUtWeHVJQ0FnSUNBZ2JXRjBjbWw0VzJsZFcycGRJRDBnY21GdVpHOXRSbXh2WVhRb2MyTmhiR1VwTzF4dUlDQjlYRzRnSUhKbGRIVnliaUJ0WVhSeWFYZzdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EyRnNZM1ZzWVhSbGN5QkZkV05zYVdSbFlXNGdaR2x6ZEdGdVkyVWdZbVYwZDJWbGJpQjBkMjhnZG1WamRHOXljeTVjYmlBcVhHNGdLaUJBWlhod2IzSjBYRzRnS2lCQWNHRnlZVzBnZTFabFkzUnZjbjBnY0NCVWFHVWdabWx5YzNRZ2RtVmpkRzl5TGx4dUlDb2dRSEJoY21GdElIdFdaV04wYjNKOUlIRWdWR2hsSUhObFkyOXVaQ0IyWldOMGIzSXVYRzRnS2lCQWNtVjBkWEp1SUh0dWRXMWlaWEo5SUVWMVkyeHBaR1ZoYmlCa2FYTjBZVzVqWlNCaVpYUjNaV1Z1SUhSb1pTQm5hWFpsYmlCMlpXTjBiM0p6TGx4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdZMkZzWTNWc1lYUmxSWFZqYkdsa1pXRnVSR2x6ZEdGdVkyVW9jRG9nVm1WamRHOXlMQ0J4T2lCV1pXTjBiM0lwT2lCdWRXMWlaWElnZTF4dUlDQnNaWFFnY21WemRXeDBJRDBnTUR0Y2JpQWdZMjl1YzNRZ2JHVnVJRDBnY0M1c1pXNW5kR2c3WEc1Y2JpQWdhV1lnS0d4bGJpQWhQVDBnY1M1c1pXNW5kR2dwWEc0Z0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtDZFVhR1VnWkdsdFpXNXphVzl1WVd4cGRIa2diMllnZEdobElIWmxZM1J2Y25NZ2JYVnpkQ0J0WVhSamFDY3BPMXh1SUNCY2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JzWlc0N0lDc3JhU2xjYmlBZ0lDQnlaWE4xYkhRZ0t6MGdLSEJiYVYwZ0xTQnhXMmxkS1NBcUtpQXlPMXh1SUNCY2JpQWdjbVYwZFhKdUlFMWhkR2d1YzNGeWRDaHlaWE4xYkhRcE8xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nWVNCa2FYTjBZVzVqWlNCdFlYUnlhWGdnZFhOcGJtY2dZU0JqZFhOMGIyMGdaR2x6ZEdGdVkyVWdablZ1WTNScGIyNHVYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSnpmU0JrWVhSaElFbHVjSFYwSUhabFkzUnZjbk1nZEc4Z1kyRnNZM1ZzWVhSbElHUnBjM1JoYm1ObGN5NWNiaUFxSUVCd1lYSmhiU0I3UkdsemRHRnVZMlZOWlhSeWFXTjlJR1JwYzNSaGJtTmxJRU4xYzNSdmJTQmthWE4wWVc1alpTQm1kVzVqZEdsdmJpNWNiaUFxSUVCeVpYUjFjbTRnZTAxaGRISnBlSDBnUTJGc1kzVnNZWFJsWkNCamRYTjBiMjBnWkdsemRHRnVZMlVnYldGMGNtbDRMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1kyRnNZMFJwYzNSaGJtTmxUV0YwY21sNEtHUmhkR0U2SUZabFkzUnZjbk1zSUdScGMzUmhibU5sT2lCRWFYTjBZVzVqWlUxbGRISnBZeWs2SUUxaGRISnBlQ0I3WEc0Z0lHTnZibk4wSUc1SmRHVnRjeUE5SUdSaGRHRXViR1Z1WjNSb08xeHVJQ0JqYjI1emRDQnRZWFJ5YVhnZ1BTQnBibWwwUTI5dmNtUnBibUYwWlhNb2JrbDBaVzF6TENCdVNYUmxiWE1zSURBcE8xeHVYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JrbDBaVzF6T3lBcksya3BJSHRjYmlBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnYVNBcklERTdJR29nUENCdVNYUmxiWE03SUNzcmFpa2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ1pEb2diblZ0WW1WeUlEMGdLR1JoZEdGYmFWMGdQVDBnYm5Wc2JDa2dmSHdnS0dSaGRHRmJhbDBnUFQwZ2JuVnNiQ2tnUHlBd0lEb2daR2x6ZEdGdVkyVW9aR0YwWVZ0cFhTd2daR0YwWVZ0cVhTazdYRzRnSUNBZ0lDQnRZWFJ5YVhoYmFWMWJhbDBnUFNCdFlYUnlhWGhiYWwxYmFWMGdQU0JrTzF4dUlDQWdJSDFjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdiV0YwY21sNE8xeHVmVnh1WEc0dktpcGNiaUFxSUVOeVpXRjBaWE1nWVNCa2FYTjBZVzVqWlNCdFlYUnlhWGdnZFhOcGJtY2dZU0JqZFhOMGIyMGdaR2x6ZEdGdVkyVWdablZ1WTNScGIyNHVYRzRnS2x4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSnpmU0JrWVhSaElFbHVjSFYwSUhabFkzUnZjbk1nZEc4Z1kyRnNZM1ZzWVhSbElHUnBjM1JoYm1ObGN5NWNiaUFxSUVCd1lYSmhiU0I3UkdsemRHRnVZMlZOWlhSeWFXTjlJR1JwYzNSaGJtTmxJRU4xYzNSdmJTQmthWE4wWVc1alpTQm1kVzVqZEdsdmJpNWNiaUFxSUVCeVpYUjFjbTRnZTAxaGRISnBlSDBnUTJGc1kzVnNZWFJsWkNCamRYTjBiMjBnWkdsemRHRnVZMlVnYldGMGNtbDRMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1kyRnNZMDV2Y20xaGJHbDZaV1JFYVhOMFlXNWpaVTFoZEhKcGVDaGtZWFJoT2lCV1pXTjBiM0p6TENCa2FYTjBZVzVqWlRvZ1JHbHpkR0Z1WTJWTlpYUnlhV01wT2lCTllYUnlhWGdnZTF4dUlDQmpiMjV6ZENCdVNYUmxiWE1nUFNCa1lYUmhMbXhsYm1kMGFEdGNiaUFnWTI5dWMzUWdiV0YwY21sNElEMGdhVzVwZEVOdmIzSmthVzVoZEdWektHNUpkR1Z0Y3l3Z2JrbDBaVzF6TENBd0tUdGNiaUFnYkdWMElHMWhlQ0E5SUU1MWJXSmxjaTVOU1U1ZlZrRk1WVVU3WEc0Z0lHeGxkQ0J0YVc0Z1BTQk9kVzFpWlhJdVRVRllYMVpCVEZWRk8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUc1SmRHVnRjenNnS3l0cEtTQjdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2s3SUdvZ1BDQnVTWFJsYlhNN0lDc3JhaWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdaRG9nYm5WdFltVnlJRDBnS0dSaGRHRmJhVjBnUFQwZ2JuVnNiQ2tnZkh3Z0tHUmhkR0ZiYWwwZ1BUMGdiblZzYkNCOGZDQnBJRDA5UFNCcUtTQS9JREFnT2lCa2FYTjBZVzVqWlNoa1lYUmhXMmxkTENCa1lYUmhXMnBkS1R0Y2JpQWdJQ0FnSUcxaGRISnBlRnRwWFZ0cVhTQTlJRzFoZEhKcGVGdHFYVnRwWFNBOUlHUTdYRzRnSUNBZ0lDQnBaaUFvWkNBK0lHMWhlQ2tnYldGNElEMGdaRHRjYmlBZ0lDQWdJR2xtSUNoa0lEd2diV2x1S1NCdGFXNGdQU0JrTzF4dUlDQWdJSDFjYmlBZ2ZWeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUc1SmRHVnRjenNnS3l0cEtTQjdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJR2tnS3lBeE95QnFJRHdnYmtsMFpXMXpPeUFySzJvcFhHNGdJQ0FnSUNCdFlYUnlhWGhiYVYxYmFsMGdQU0J0WVhSeWFYaGJhbDFiYVYwZ1BTQW9iV0YwY21sNFcybGRXMnBkSUMwZ2JXbHVLU0F2SUNodFlYZ2dMU0J0YVc0cE8xeHVJQ0I5WEc0Z0lISmxkSFZ5YmlCdFlYUnlhWGc3WEc1OVhHNWNiaThxS2lCSFpXNWxjbUYwWlhNZ1lYSnlZWGtnWm5KdmJTQmhJSEpoYm1kbElGdGlaV2RwYmpzZ1pXNWtYU0J2Y2lCYlltVm5hVzQ3SUdWdVpDa2dhV1lnWlc1a1JYaGpiSFZ6YVhabExpQXFLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJuWlc1U1lXNW5aU2hpWldkcGJqb2diblZ0WW1WeUxDQmxibVE2SUc1MWJXSmxjaXdnWlc1a1JYaGpiSFZ6YVhabElEMGdabUZzYzJVcE9pQkpiblF6TWtGeWNtRjVJSHRjYmlBZ1kyOXVjM1FnYmtsMFpXMXpJRDBnWlc1a0lDMGdZbVZuYVc0Z0t5QW9aVzVrUlhoamJIVnphWFpsSUQ4Z01DQTZJREVwTzF4dUlDQmpiMjV6ZENCelpYSnBaWE1nUFNCdVpYY2dTVzUwTXpKQmNuSmhlU2h1U1hSbGJYTXBPMXh1WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dia2wwWlcxek95QXJLMmtwWEc0Z0lDQWdjMlZ5YVdWelcybGRJRDBnWW1WbmFXNGdLeUJwTzF4dVhHNGdJSEpsZEhWeWJpQnpaWEpwWlhNN1hHNTlYRzVjYmk4cUtseHVJQ29nVW1WMGRYSnVjeUJ2Y21SbGNpQnZaaUIyWVd4MVpYTWdZWE1nYVdZZ2RHaGxlU0JoY21VZ2MyOXlkR1ZrTGx4dUlDcGNiaUFxSUVCbGVIQnZjblJjYmlBcUlFQndZWEpoYlNCN1lXNTVXMTE5SUhaaGJIVmxjeUJKYm5CMWRDQmhjbkpoZVM1Y2JpQXFJRUJ3WVhKaGJTQjdZbTl2YkdWaGJuMGdXM0psZG1WeWMyVTlabUZzYzJWZElGZG9aWFJvWlhJZ2RHOGdjbVYwZFhKdUlISmxkbVZ5YzJWa0lHOXlaR1Z5TGx4dUlDb2dRSEpsZEhWeWJpQjdiblZ0WW1WeVcxMTlJRlJvWlNCdmNtUmxjaUJqYjIxd2RYUmxaQzVjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHRnlaMU52Y25Rb2RtRnNkV1Z6T2lCaGJubGJYU3dnY21WMlpYSnpaU0E5SUdaaGJITmxLVG9nYm5WdFltVnlXMTBnZTF4dUlDQmpiMjV6ZENCemIzSjBabTRnUFNCeVpYWmxjbk5sSUQ4Z0tHRTZJR0Z1ZVZ0ZExDQmlPaUJoYm5sYlhTa2dQVDRnS0dKYk1GMGdMU0JoV3pCZEtTQTZJQ2hoT2lCaGJubGJYU3dnWWpvZ1lXNTVXMTBwSUQwK0lDaGhXekJkSUMwZ1lsc3dYU2s3WEc0Z0lHTnZibk4wSUdSbFkyOXlJRDBnS0hZNklHRnVlU3dnYVRvZ2JuVnRZbVZ5S1NBOVBpQmJkaXdnYVYwN0lDOHZJSE5sZENCcGJtUmxlQ0IwYnlCMllXeDFaVnh1SUNCamIyNXpkQ0IxYm1SbFkyOXlJRDBnS0dFNklHRnVlVnRkS1NBOVBpQmhXekZkT3lBdkx5QnNaV0YyWlNCdmJteDVJR2x1WkdWNFhHNGdJR052Ym5OMElGOWhjbWR6YjNKMElEMGdLR0Z5Y2pvZ1lXNTVXMTBwSUQwK0lHRnljaTV0WVhBb1pHVmpiM0lwTG5OdmNuUW9jMjl5ZEdadUtTNXRZWEFvZFc1a1pXTnZjaWs3WEc0Z0lISmxkSFZ5YmlCZllYSm5jMjl5ZENoMllXeDFaWE1wTzF4dWZWeHVYRzR2S2lwY2JpQXFJRkpsZEhWeWJuTWdkR2hsSUdsdVpHVjRaWE1nYjJZZ2RHaGxJRzF2YzNRZ1pHbDJaWEp6WlNCdlltcGxZM1J6SUdGalkyOXlaR2x1WnlCMGJ5QjBhR1VnWkdsemRDQm1kVzVqZEdsdmJseHVJQ29nUUhCaGNtRnRJSHR1ZFcxaVpYSjlJR3hsYm1kMGFDQjBiM1JoYkNCdWRXMWlaWElnYjJZZ2IySnFaV04wYzF4dUlDb2dRSEJoY21GdElIdHVkVzFpWlhKOUlHNGdiblZ0WW1WeUlHOW1JR1JwZG1WeWMyVWdaV3hsYldWdWRITWdkRzhnWm1sdVpGeHVJQ29nUUhCaGNtRnRJSHNvYVRFNklHNTFiV0psY2l3Z2FUSTZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlmU0JrYVhOMElHRWdablZ1WTNScGIyNGdkMmhwWTJnZ1kyRnNZM1ZzWVhSbGN5QmthWE4wWVc1alpTQmlaWFIzWldWdVhHNGdLaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RIZHZJRzlpYW1WamRITWdkWE5wYm1jZ2RHaGxhWElnYVc1a1pYaGxjMXh1SUNvZ1FISmxkSFZ5Ym5NZ2UyNTFiV0psY2x0ZGZTQlVhR1VnYVc1a1pYaGxjeUJ2WmlCMGFHVWdiVzl6ZENCa2FYWmxjbk5sSUc5aWFtVmpkSE5jYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHZGxkRVJwZG1WeWMyVlRkV0p6WlhRb2JHVnVaM1JvT2lCdWRXMWlaWElzSUc0NklHNTFiV0psY2l3Z1pHbHpkRG9nS0dreE9pQnVkVzFpWlhJc0lHa3lPaUJ1ZFcxaVpYSXBJRDArSUc1MWJXSmxjaWs2SUc1MWJXSmxjbHRkSUh0Y2JpQWdablZ1WTNScGIyNGdiV0Y0UW5rb2RtRnNkV1Z6T2lCSmRHVnlZV0pzWlVsMFpYSmhkRzl5UEc1MWJXSmxjajRzSUc5eVpHVnlRbms2SUNocE9pQnVkVzFpWlhJcElEMCtJRzUxYldKbGNpa2dlMXh1SUNBZ0lHeGxkQ0J0WVhoV1lXeDFaU0E5SUc1MWJHdzdYRzRnSUNBZ2JHVjBJRzFoZUU5eVpHVnlRbmtnUFNCdWRXeHNPMXh1WEc0Z0lDQWdabTl5SUNoamIyNXpkQ0JsYkdWdFpXNTBJRzltSUhaaGJIVmxjeWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdaV3hsYldWdWRFOXlaR1Z5UW5rZ1BTQnZjbVJsY2tKNUtHVnNaVzFsYm5RcE8xeHVJQ0FnSUNBZ2FXWWdLRzFoZUU5eVpHVnlRbmtnUFQwZ2JuVnNiQ0I4ZkNCbGJHVnRaVzUwVDNKa1pYSkNlU0ErSUcxaGVFOXlaR1Z5UW5rcElIdGNiaUFnSUNBZ0lDQWdiV0Y0Vm1Gc2RXVWdQU0JsYkdWdFpXNTBPMXh1SUNBZ0lDQWdJQ0J0WVhoUGNtUmxja0o1SUQwZ1pXeGxiV1Z1ZEU5eVpHVnlRbms3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1SUNBZ0lISmxkSFZ5YmlCdFlYaFdZV3gxWlR0Y2JpQWdmVnh1WEc0Z0lHTnZibk4wSUhOMVluTmxkQ0E5SUZ0eVlXNWtiMjFKYm5Rb2JHVnVaM1JvSUMwZ01TbGRPMXh1SUNCamIyNXpkQ0JqYjIxd2JHVnRaVzUwSUQwZ2JtVjNJRk5sZENncE8xeHVYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JHVnVaM1JvT3lBcksya3BJSHRjYmlBZ0lDQnBaaUFvSVhOMVluTmxkQzVwYm1Oc2RXUmxjeWhwS1NsY2JpQWdJQ0FnSUdOdmJYQnNaVzFsYm5RdVlXUmtLR2twTzF4dUlDQjlYRzVjYmlBZ2QyaHBiR1VnS0hOMVluTmxkQzVzWlc1bmRHZ2dQQ0J1S1NCN1hHNGdJQ0FnWTI5dWMzUWdhV1I0SUQwZ2JXRjRRbmtvWEc0Z0lDQWdJQ0JqYjIxd2JHVnRaVzUwTG5aaGJIVmxjeWdwSUdGeklFbDBaWEpoWW14bFNYUmxjbUYwYjNJOGJuVnRZbVZ5UGl4Y2JpQWdJQ0FnSUNocEtTQTlQaUJOWVhSb0xtMXBiaTVoY0hCc2VTaE5ZWFJvTENCemRXSnpaWFF1YldGd0tHWjFibU4wYVc5dUtIWmhiQ3dnYVc1a1pYZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJR1JwYzNRb2FTd2dkbUZzS1R0Y2JpQWdJQ0FnSUgwcEtTazdYRzRnSUNBZ2FXWWdLR2xrZUNrZ2UxeHVJQ0FnSUNBZ2MzVmljMlYwTG5CMWMyZ29hV1I0S1R0Y2JpQWdJQ0FnSUdOdmJYQnNaVzFsYm5RdVpHVnNaWFJsS0dsa2VDazdYRzRnSUNBZ2ZWeHVJQ0I5WEc0Z0lISmxkSFZ5YmlCemRXSnpaWFE3WEc1OVhHNWNiaThxS2x4dUlDb2dVbVYwZFhKdWN5QnViM0p0WVd4cGVtVmtJSFpsWTNSdmNpNWNiaUFxSUZ4dUlDb2dRR1Y0Y0c5eWRGeHVJQ29nUUhCaGNtRnRJSHRXWldOMGIzSjlJR1JoZEdFZ2JuVnRaWEpwWTJGc0lHRnljbUY1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnViM0p0WVd4cGVtVW9aR0YwWVRvZ1ZtVmpkRzl5S1RvZ1ZtVmpkRzl5SUh0Y2JpQWdZMjl1YzNRZ2JHVnVJRDBnWkdGMFlTNXNaVzVuZEdnN1hHNGdJR3hsZENCemRXMGdQU0F3TzF4dUlDQnNaWFFnYzNWdFQyWlRjWFZoY21WeklEMGdNRHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR3hsYmpzZ0t5dHBLU0I3WEc0Z0lDQWdjM1Z0SUNzOUlHUmhkR0ZiYVYwN1hHNGdJQ0FnYzNWdFQyWlRjWFZoY21WeklDczlJR1JoZEdGYmFWMGdLaW9nTWp0Y2JpQWdmVnh1WEc0Z0lHTnZibk4wSUcxbFlXNGdQU0J6ZFcwZ0x5QnNaVzQ3WEc0Z0lHTnZibk4wSUhOMFpFUmxka2x1ZG1WeWMyVWdQU0F4TGpBZ0x5Qk5ZWFJvTG5OeGNuUW9jM1Z0VDJaVGNYVmhjbVZ6SUM4Z2JHVnVJQzBnYldWaGJpQXFLaUF5S1R0Y2JseHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUd4bGJqc2dLeXRwS1Z4dUlDQWdJR1JoZEdGYmFWMGdQU0FvWkdGMFlWdHBYU0F0SUcxbFlXNHBJQ29nYzNSa1JHVjJTVzUyWlhKelpUdGNibHh1SUNCeVpYUjFjbTRnWkdGMFlUdGNibjFjYmx4dUx5b3FYRzRnS2lCR2FXNWtjeUJ6WlhRZ1pHbG1abVZ5Wlc1alpTQmlaWFIzWldWdUlIUjNieUJzYVhOMGN5NWNiaUFxSUVCd1lYSmhiU0I3WVc1NVcxMTlJR0VnVkdobElHWnBjbk4wSUd4cGMzUXVYRzRnS2lCQWNHRnlZVzBnZTJGdWVWdGRmU0JpSUZSb1pTQnpaV052Ym1RZ2JHbHpkQzVjYmlBcUlFQnlaWFIxY200Z2UyRnVlVnRkZlZ4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdjMlYwUkdsbVptVnlaVzVqWlNoaE9pQmhibmxiWFN3Z1lqb2dZVzU1VzEwcE9pQmhibmxiWFNCN1hHNGdJR052Ym5OMElHSlRaWFFnUFNCdVpYY2dVMlYwS0dJcE8xeHVJQ0J5WlhSMWNtNGdRWEp5WVhrdVpuSnZiU2h1WlhjZ1UyVjBLR0V1Wm1sc2RHVnlLQ2g0S1NBOVBpQWhZbE5sZEM1b1lYTW9lQ2twS1M1MllXeDFaWE1vS1NrN1hHNTlYRzRpWFgwPSIsImltcG9ydCAqIGFzIGZsIGZyb20gJ2Zhc3Rlc3QtbGV2ZW5zaHRlaW4nO1xuaW1wb3J0IHsgamFyb1dpbmtsZXIgfSBmcm9tICdqYXJvLXdpbmtsZXItdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBhc3ltbWV0cmljRGlzdGFuY2UsIGJyYXVuQmxhbnF1ZXREaXN0YW5jZSwgY29zaW5lRGlzdGFuY2UsIGRpY2VEaXN0YW5jZSwgZXVjbGlkZWFuRGlzdGFuY2UsIGhhbW1pbmdEaXN0YW5jZSwga3VsY3p5bnNraURpc3RhbmNlLCBtY0Nvbm5hdWdoZXlEaXN0YW5jZSwgcm9nb3RHb2xkYmVyZ0Rpc3RhbmNlLCBydXNzZWxEaXN0YW5jZSwgc29rYWxEaXN0YW5jZSwgdGFuaW1vdG9EaXN0YW5jZSwgbnVtZXJpY0Rpc3RhbmNlLCB0YW5pbW90b0Rpc3RhbmNlSW50QXJyYXksIGludmVyc2VDb21tb25JdGVtc0NvdW50LCB9IGZyb20gJy4uL2Rpc3RhbmNlLW1ldHJpY3MtbWV0aG9kcyc7XG5pbXBvcnQgeyBjYWxjdWxhdGVFdWNsaWRlYW5EaXN0YW5jZSB9IGZyb20gJ0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3ZlY3Rvci1vcGVyYXRpb25zJztcbmltcG9ydCB7IG1tRGlzdGFuY2VGdW5jdGlvbnMsIE1tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcyB9IGZyb20gJy4uL21hY3JvbW9sZWN1bGUtZGlzdGFuY2UtZnVuY3Rpb25zJztcbmltcG9ydCB7IERpc3RhbmNlTWV0cmljc1N1YmplY3RzLCBCaXRBcnJheU1ldHJpY3NOYW1lcywgU3RyaW5nTWV0cmljc05hbWVzLCBWZWN0b3JNZXRyaWNzTmFtZXMsIE51bWJlck1ldHJpY3NOYW1lcywgSW50QXJyYXlNZXRyaWNzTmFtZXMsIE51bWJlckFycmF5TWV0cmljc05hbWVzIH0gZnJvbSAnLi9jb25zdHMnO1xuZXhwb3J0IGNvbnN0IHZlY3RvckRpc3RhbmNlTWV0cmljc01ldGhvZHMgPSB7XG4gICAgW1ZlY3Rvck1ldHJpY3NOYW1lcy5FdWNsaWRlYW5dOiBjYWxjdWxhdGVFdWNsaWRlYW5EaXN0YW5jZSxcbn07XG5leHBvcnQgY29uc3Qgc3RyaW5nRGlzdGFuY2VNZXRyaWNzTWV0aG9kcyA9IHtcbiAgICBbU3RyaW5nTWV0cmljc05hbWVzLkxldmVuc2h0ZWluXTogZmwuZGlzdGFuY2UsXG4gICAgW1N0cmluZ01ldHJpY3NOYW1lcy5KYXJvV2lua2xlcl06IGphcm9XaW5rbGVyLFxuICAgIFtTdHJpbmdNZXRyaWNzTmFtZXMuTWFuaGF0dGFuXTogbWFuaGF0dGFuRGlzdGFuY2UsXG4gICAgW1N0cmluZ01ldHJpY3NOYW1lcy5PbmVob3RdOiBjYXRlZ29yaWNhbERpc3RhbmNlLFxufTtcbmV4cG9ydCBjb25zdCBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHMgPSB7XG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlRhbmltb3RvXTogdGFuaW1vdG9EaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuRGljZV06IGRpY2VEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuQXN5bW1ldHJpY106IGFzeW1tZXRyaWNEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuQnJhdW5CbGFucXVldF06IGJyYXVuQmxhbnF1ZXREaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuQ29zaW5lXTogY29zaW5lRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkt1bGN6eW5za2ldOiBrdWxjenluc2tpRGlzdGFuY2UsXG4gICAgW0JpdEFycmF5TWV0cmljc05hbWVzLk1jQ29ubmF1Z2hleV06IG1jQ29ubmF1Z2hleURpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5Sb2dvdEdvbGRiZXJnXTogcm9nb3RHb2xkYmVyZ0Rpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5SdXNzZWxdOiBydXNzZWxEaXN0YW5jZSxcbiAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuU29rYWxdOiBzb2thbERpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5IYW1taW5nXTogaGFtbWluZ0Rpc3RhbmNlLFxuICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5FdWNsaWRlYW5dOiBldWNsaWRlYW5EaXN0YW5jZSxcbn07XG5leHBvcnQgY29uc3QgaW50QXJyYXlEaXN0YW5jZU1ldHJpY3NNZXRob2RzID0ge1xuICAgIFtJbnRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b0ludEFycmF5XTogdGFuaW1vdG9EaXN0YW5jZUludEFycmF5LFxufTtcbmV4cG9ydCBjb25zdCBudW1iZXJEaXN0YW5jZU1ldHJpY3NNZXRob2RzID0ge1xuICAgIFtOdW1iZXJNZXRyaWNzTmFtZXMuRGlmZmVyZW5jZV06IG51bWVyaWNEaXN0YW5jZSxcbn07XG5leHBvcnQgY29uc3QgbnVtYmVyQXJyYXlEaXN0YW5jZU1ldHJpY3MgPSB7XG4gICAgW051bWJlckFycmF5TWV0cmljc05hbWVzLkNvbW1vbkl0ZW1zXTogaW52ZXJzZUNvbW1vbkl0ZW1zQ291bnQsXG59O1xuZXhwb3J0IGNvbnN0IEF2YWlsYWJsZU1ldHJpY3MgPSB7XG4gICAgW0Rpc3RhbmNlTWV0cmljc1N1YmplY3RzLlZlY3Rvcl06IHtcbiAgICAgICAgW1ZlY3Rvck1ldHJpY3NOYW1lcy5FdWNsaWRlYW5dOiB2ZWN0b3JEaXN0YW5jZU1ldHJpY3NNZXRob2RzW1ZlY3Rvck1ldHJpY3NOYW1lcy5FdWNsaWRlYW5dLFxuICAgIH0sXG4gICAgW0Rpc3RhbmNlTWV0cmljc1N1YmplY3RzLlN0cmluZ106IHtcbiAgICAgICAgW1N0cmluZ01ldHJpY3NOYW1lcy5MZXZlbnNodGVpbl06IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHNbU3RyaW5nTWV0cmljc05hbWVzLkxldmVuc2h0ZWluXSxcbiAgICAgICAgW1N0cmluZ01ldHJpY3NOYW1lcy5KYXJvV2lua2xlcl06IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHNbU3RyaW5nTWV0cmljc05hbWVzLkphcm9XaW5rbGVyXSxcbiAgICAgICAgW1N0cmluZ01ldHJpY3NOYW1lcy5NYW5oYXR0YW5dOiBzdHJpbmdEaXN0YW5jZU1ldHJpY3NNZXRob2RzW1N0cmluZ01ldHJpY3NOYW1lcy5NYW5oYXR0YW5dLFxuICAgICAgICBbU3RyaW5nTWV0cmljc05hbWVzLk9uZWhvdF06IHN0cmluZ0Rpc3RhbmNlTWV0cmljc01ldGhvZHNbU3RyaW5nTWV0cmljc05hbWVzLk9uZWhvdF0sXG4gICAgfSxcbiAgICBbRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuQml0QXJyYXldOiB7XG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b106IGJpdEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kc1tCaXRBcnJheU1ldHJpY3NOYW1lcy5UYW5pbW90b10sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5EaWNlXTogYml0QXJyYXlEaXN0YW5jZU1ldHJpY3NNZXRob2RzW0JpdEFycmF5TWV0cmljc05hbWVzLkRpY2VdLFxuICAgICAgICBbQml0QXJyYXlNZXRyaWNzTmFtZXMuQXN5bW1ldHJpY106IGJpdEFycmF5RGlzdGFuY2VNZXRyaWNzTWV0aG9kc1tCaXRBcnJheU1ldHJpY3NOYW1lcy5Bc3ltbWV0cmljXSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkJyYXVuQmxhbnF1ZXRdOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuQnJhdW5CbGFucXVldF0sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5Db3NpbmVdOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuQ29zaW5lXSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLkt1bGN6eW5za2ldOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuS3VsY3p5bnNraV0sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5NY0Nvbm5hdWdoZXldOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuTWNDb25uYXVnaGV5XSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlJvZ290R29sZGJlcmddOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuUm9nb3RHb2xkYmVyZ10sXG4gICAgICAgIFtCaXRBcnJheU1ldHJpY3NOYW1lcy5SdXNzZWxdOiBiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbQml0QXJyYXlNZXRyaWNzTmFtZXMuUnVzc2VsXSxcbiAgICAgICAgW0JpdEFycmF5TWV0cmljc05hbWVzLlNva2FsXTogYml0QXJyYXlEaXN0YW5jZU1ldHJpY3NNZXRob2RzW0JpdEFycmF5TWV0cmljc05hbWVzLlNva2FsXSxcbiAgICB9LFxuICAgIFtEaXN0YW5jZU1ldHJpY3NTdWJqZWN0cy5NYWNyb01vbGVjdWxlXToge1xuICAgICAgICBbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLkhBTU1JTkddOiBtbURpc3RhbmNlRnVuY3Rpb25zW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5IQU1NSU5HXSxcbiAgICAgICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5MRVZFTlNIVEVJTl06IG1tRGlzdGFuY2VGdW5jdGlvbnNbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLkxFVkVOU0hURUlOXSxcbiAgICAgICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5ORUVETEVNQU5OX1dVTlNDSF06IG1tRGlzdGFuY2VGdW5jdGlvbnNbTW1EaXN0YW5jZUZ1bmN0aW9uc05hbWVzLk5FRURMRU1BTk5fV1VOU0NIXSxcbiAgICAgICAgW01tRGlzdGFuY2VGdW5jdGlvbnNOYW1lcy5NT05PTUVSX0NIRU1JQ0FMX0RJU1RBTkNFXTogbW1EaXN0YW5jZUZ1bmN0aW9uc1tNbURpc3RhbmNlRnVuY3Rpb25zTmFtZXMuTU9OT01FUl9DSEVNSUNBTF9ESVNUQU5DRV0sXG4gICAgfSxcbiAgICBbRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTnVtYmVyXToge1xuICAgICAgICBbTnVtYmVyTWV0cmljc05hbWVzLkRpZmZlcmVuY2VdOiBudW1iZXJEaXN0YW5jZU1ldHJpY3NNZXRob2RzW051bWJlck1ldHJpY3NOYW1lcy5EaWZmZXJlbmNlXSxcbiAgICB9LFxuICAgIFtEaXN0YW5jZU1ldHJpY3NTdWJqZWN0cy5JbnRBcnJheV06IHtcbiAgICAgICAgW0ludEFycmF5TWV0cmljc05hbWVzLlRhbmltb3RvSW50QXJyYXldOiBpbnRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHNbSW50QXJyYXlNZXRyaWNzTmFtZXMuVGFuaW1vdG9JbnRBcnJheV0sXG4gICAgfSxcbiAgICBbRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTnVtYmVyQXJyYXldOiB7XG4gICAgICAgIFtOdW1iZXJBcnJheU1ldHJpY3NOYW1lcy5Db21tb25JdGVtc106IG51bWJlckFycmF5RGlzdGFuY2VNZXRyaWNzW051bWJlckFycmF5TWV0cmljc05hbWVzLkNvbW1vbkl0ZW1zXSxcbiAgICB9LFxufTtcbmV4cG9ydCBjb25zdCBNZXRyaWNUb0RhdGFUeXBlID0gT2JqZWN0LmtleXMoQXZhaWxhYmxlTWV0cmljcylcbiAgICAucmVkdWNlKChyZXQsIGtleSkgPT4ge1xuICAgIGZvciAoY29uc3QgdmFsIG9mIE9iamVjdC5rZXlzKEF2YWlsYWJsZU1ldHJpY3Nba2V5XSkpXG4gICAgICAgIHJldFt2YWxdID0ga2V5O1xuICAgIHJldHVybiByZXQ7XG59LCB7fSk7XG5leHBvcnQgZnVuY3Rpb24gaXNTdHJpbmdNZXRyaWMobmFtZSkge1xuICAgIHJldHVybiBNZXRyaWNUb0RhdGFUeXBlW25hbWVdID09ICdTdHJpbmcnO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzQml0QXJyYXlNZXRyaWMobmFtZSkge1xuICAgIHJldHVybiBNZXRyaWNUb0RhdGFUeXBlW25hbWVdID09ICdCaXRBcnJheSc7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNWZWN0b3JNZXRyaWMobmFtZSkge1xuICAgIHJldHVybiBNZXRyaWNUb0RhdGFUeXBlW25hbWVdID09ICdWZWN0b3InO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzTWFjcm9Nb2xlY3VsZU1ldHJpYyhuYW1lKSB7XG4gICAgcmV0dXJuIE1ldHJpY1RvRGF0YVR5cGVbbmFtZV0gPT0gRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTWFjcm9Nb2xlY3VsZS50b1N0cmluZygpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzTnVtZXJpY01ldHJpYyhuYW1lKSB7XG4gICAgcmV0dXJuIE1ldHJpY1RvRGF0YVR5cGVbbmFtZV0gPT0gRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTnVtYmVyLnRvU3RyaW5nKCk7XG59XG5leHBvcnQgZnVuY3Rpb24gaXNOdW1iZXJBcnJheU1ldHJpYyhuYW1lKSB7XG4gICAgcmV0dXJuIE1ldHJpY1RvRGF0YVR5cGVbbmFtZV0gPT0gRGlzdGFuY2VNZXRyaWNzU3ViamVjdHMuTnVtYmVyQXJyYXkudG9TdHJpbmcoKTtcbn1cbi8qKiBNYW5oYXR0YW4gZGlzdGFuY2UgYmV0d2VlbiB0d28gc2VxdWVuY2VzIChtYXRjaCAtIDAsIG1pc21hdGNoIC0gMSkgbm9ybWFsaXplZCBmb3IgbGVuZ3RoLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1hbmhhdHRhbkRpc3RhbmNlKHMxLCBzMikge1xuICAgIGlmIChzMS5sZW5ndGggIT09IHMyLmxlbmd0aCkge1xuICAgICAgICByZXR1cm4gMTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIGxldCBkaXN0ID0gMDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPCBzMS5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIGRpc3QgKz0gczFbaV0gPT0gczJbaV0gPyAwIDogMTtcbiAgICAgICAgcmV0dXJuIGRpc3QgLyBzMS5sZW5ndGg7XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGNhdGVnb3JpY2FsRGlzdGFuY2UoczEsIHMyKSB7XG4gICAgcmV0dXJuIHMxID09PSBzMiA/IDAgOiAxO1xufVxuLyoqIFVuaWZpZWQgY2xhc3MgaW1wbGVtZW50aW5nIGRpZmZlcmVudCBzdHJpbmcgbWVhc3VyZXMuICovXG5leHBvcnQgY2xhc3MgTWVhc3VyZSB7XG4gICAgbWV0aG9kO1xuICAgIGRhdGFUeXBlO1xuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgTWVhc3VyZSB3aXRoIC5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kIE1ldGhvZCB0byBjYWxjdWxhdGUgZGlzdGFuY2UgYmV0d2VlbiBzdHJpbmdzLlxuICAgICAqIEBtZW1iZXJvZiBNZWFzdXJlclxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKG1ldGhvZCkge1xuICAgICAgICB0aGlzLm1ldGhvZCA9IG1ldGhvZDtcbiAgICAgICAgdGhpcy5kYXRhVHlwZSA9IE1ldHJpY1RvRGF0YVR5cGVbbWV0aG9kXTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoZSBtZXRyaWMgbmVlZHMgYXJndW1lbnRzIHRvIGJlIGNhbGN1bGF0ZWQuXG4gICAgICogQHBhcmFtIHtLbm93bk1ldHJpY3N9IG1ldGhvZCBNZXRyaWMgdG8gY2hlY2sgaWYgaXQgbmVlZHMgYXJndW1lbnRzLlxuICAgICAqIEByZXR1cm4ge2Jvb2xlYW59IFRydWUgaWYgdGhlIG1ldHJpYyBuZWVkcyBhcmd1bWVudHMuXG4gICAgICogQG1lbWJlcm9mIE1lYXN1cmVcbiAgICAgKi9cbiAgICBtZXRyaWNOZWVkc0FyZ3MobWV0aG9kKSB7XG4gICAgICAgIHJldHVybiBpc01hY3JvTW9sZWN1bGVNZXRyaWMobWV0aG9kKSB8fCBpc051bWVyaWNNZXRyaWMobWV0aG9kKSB8fCBpc051bWJlckFycmF5TWV0cmljKG1ldGhvZCk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgY3VzdG9tIHN0cmluZyBkaXN0YW5jZSBmdW5jdGlvbiBzcGVjaWZpZWQuXG4gICAgICogQHBhcmFtIHtvcHRzfSBvcHRzIE9wdGlvbnMgZm9yIHRoZSBtZWFzdXJlLiB1c2VkIGZvciBtYWNyb21vbGVjdWxlIGRpc3RhbmNlc1xuICAgICAqIEByZXR1cm4ge0Rpc3RhbmNlTWV0cmljfSBDYWxsYmFjayBvZiB0aGUgbWVhc3VyZSBjaG9zZW4uXG4gICAgICogQG1lbWJlcm9mIE1lYXN1cmVyXG4gICAgICovXG4gICAgZ2V0TWVhc3VyZShvcHRzKSB7XG4gICAgICAgIGNvbnN0IGRpY3QgPSBBdmFpbGFibGVNZXRyaWNzO1xuICAgICAgICBpZiAoIWRpY3QuaGFzT3duUHJvcGVydHkodGhpcy5kYXRhVHlwZSkgfHwgIWRpY3RbdGhpcy5kYXRhVHlwZV0uaGFzT3duUHJvcGVydHkodGhpcy5tZXRob2QpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG1lYXN1cmUgJHt0aGlzLm1ldGhvZH0gZm9yIGRhdGEgdHlwZSAke3RoaXMuZGF0YVR5cGV9YCk7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldHJpY05lZWRzQXJncyh0aGlzLm1ldGhvZCkgP1xuICAgICAgICAgICAgZGljdFt0aGlzLmRhdGFUeXBlXVt0aGlzLm1ldGhvZF0ob3B0cykgOlxuICAgICAgICAgICAgZGljdFt0aGlzLmRhdGFUeXBlXVt0aGlzLm1ldGhvZF07XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFJldHVybnMgY3VzdG9tIHN0cmluZyBkaXN0YW5jZSBieSB0aGUgZ2l2ZW4gZGF0YSB0eXBlLlxuICAgICAqIEBwYXJhbSB7QXZhaWxhYmxlRGF0YVR5cGVzfSBkYXRhVHlwZSBNZXRyaWMncyBkYXRhIHR5cGVcbiAgICAgKiBAcmV0dXJuIHtzdHJpbmdbXX0gTWV0cmljIG5hbWVzIHdoaWNoIGV4cGVjdHMgdGhlIGdpdmVuIGRhdGEgdHlwZVxuICAgICAqIEBtZW1iZXJvZiBNZWFzdXJlclxuICAgICAqL1xuICAgIHN0YXRpYyBnZXRNZXRyaWNCeURhdGFUeXBlKGRhdGFUeXBlKSB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhBdmFpbGFibGVNZXRyaWNzW2RhdGFUeXBlXSk7XG4gICAgfVxuICAgIC8qKiBSZXR1cm5zIG1ldHJpYyBuYW1lcyBhdmFpbGFibGUuXG4gICAgICogQG1lbWJlcm9mIE1lYXN1cmVyXG4gICAgICovXG4gICAgc3RhdGljIGdldCBhdmFpbGFibGVNZWFzdXJlcygpIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKEF2YWlsYWJsZU1ldHJpY3MpO1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRIbHdaV1F0YldWMGNtbGpjeTVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYkluUjVjR1ZrTFcxbGRISnBZM011ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRXNUMEZCVHl4TFFVRkxMRVZCUVVVc1RVRkJUU3h4UWtGQmNVSXNRMEZCUXp0QlFVTXhReXhQUVVGUExFVkJRVU1zVjBGQlZ5eEZRVUZETEUxQlFVMHNlVUpCUVhsQ0xFTkJRVU03UVVGRmNFUXNUMEZCVHl4RlFVTk1MR3RDUVVGclFpeEZRVU5zUWl4eFFrRkJjVUlzUlVGRGNrSXNZMEZCWXl4RlFVTmtMRmxCUVZrc1JVRkRXaXhwUWtGQmFVSXNSVUZEYWtJc1pVRkJaU3hGUVVObUxHdENRVUZyUWl4RlFVTnNRaXh2UWtGQmIwSXNSVUZEY0VJc2NVSkJRWEZDTEVWQlEzSkNMR05CUVdNc1JVRkRaQ3hoUVVGaExFVkJRMklzWjBKQlFXZENMRVZCUTJoQ0xHVkJRV1VzUlVGRFppeDNRa0ZCZDBJc1JVRkRlRUlzZFVKQlFYVkNMRWRCUTNoQ0xFMUJRVTBzTmtKQlFUWkNMRU5CUVVNN1FVRkZja01zVDBGQlR5eEZRVUZETERCQ1FVRXdRaXhGUVVGRExFMUJRVTBzYVVSQlFXbEVMRU5CUVVNN1FVRkhNMFlzVDBGQlR5eEZRVUZETEcxQ1FVRnRRaXhGUVVGRkxIZENRVUYzUWl4RlFVRkRMRTFCUVUwc2NVTkJRWEZETEVOQlFVTTdRVUZEYkVjc1QwRkJUeXhGUVVGRExIVkNRVUYxUWl4RlFVRkZMRzlDUVVGdlFpeEZRVU51UkN4clFrRkJhMElzUlVGQlJTeHJRa0ZCYTBJc1JVRkJSU3hyUWtGQmEwSXNSVUZCUlN4dlFrRkJiMElzUlVGRGFFWXNkVUpCUVhWQ0xFVkJRVU1zVFVGQlRTeFZRVUZWTEVOQlFVTTdRVUZITTBNc1RVRkJUU3hEUVVGRExFMUJRVTBzTkVKQlFUUkNMRWRCUVhsRU8wbEJRMmhITEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVTBGQlV5eERRVUZETEVWQlFVVXNNRUpCUVRCQ08wTkJRek5FTEVOQlFVTTdRVUZGUml4TlFVRk5MRU5CUVVNc1RVRkJUU3cwUWtGQk5FSXNSMEZCZVVRN1NVRkRhRWNzUTBGQlF5eHJRa0ZCYTBJc1EwRkJReXhYUVVGWExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNVVUZCVVR0SlFVTTNReXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRmRCUVZjc1EwRkJReXhGUVVGRkxGZEJRVmM3U1VGRE4wTXNRMEZCUXl4clFrRkJhMElzUTBGQlF5eFRRVUZUTEVOQlFVTXNSVUZCUlN4cFFrRkJhVUk3U1VGRGFrUXNRMEZCUXl4clFrRkJhMElzUTBGQlF5eE5RVUZOTEVOQlFVTXNSVUZCUlN4dFFrRkJiVUk3UTBGRGFrUXNRMEZCUXp0QlFVVkdMRTFCUVUwc1EwRkJReXhOUVVGTkxEaENRVUU0UWl4SFFVRTJSRHRKUVVOMFJ5eERRVUZETEc5Q1FVRnZRaXhEUVVGRExGRkJRVkVzUTBGQlF5eEZRVUZGTEdkQ1FVRm5RanRKUVVOcVJDeERRVUZETEc5Q1FVRnZRaXhEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEZsQlFWazdTVUZEZWtNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4VlFVRlZMRU5CUVVNc1JVRkJSU3hyUWtGQmEwSTdTVUZEY2tRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4aFFVRmhMRU5CUVVNc1JVRkJSU3h4UWtGQmNVSTdTVUZETTBRc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hqUVVGak8wbEJRemRETEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zVlVGQlZTeERRVUZETEVWQlFVVXNhMEpCUVd0Q08wbEJRM0pFTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zV1VGQldTeERRVUZETEVWQlFVVXNiMEpCUVc5Q08wbEJRM3BFTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zWVVGQllTeERRVUZETEVWQlFVVXNjVUpCUVhGQ08wbEJRek5FTEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zVFVGQlRTeERRVUZETEVWQlFVVXNZMEZCWXp0SlFVTTNReXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRXRCUVVzc1EwRkJReXhGUVVGRkxHRkJRV0U3U1VGRE0wTXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFBRVUZQTEVOQlFVTXNSVUZCUlN4bFFVRmxPMGxCUXk5RExFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1UwRkJVeXhEUVVGRExFVkJRVVVzYVVKQlFXbENPME5CUTNCRUxFTkJRVU03UVVGRlJpeE5RVUZOTEVOQlFVTXNUVUZCVFN3NFFrRkJPRUlzUjBGQmJVVTdTVUZETlVjc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4blFrRkJaMElzUTBGQlF5eEZRVUZGTEhkQ1FVRjNRanREUVVOc1JTeERRVUZETzBGQlJVWXNUVUZCVFN4RFFVRkRMRTFCUVUwc05FSkJRVFJDTEVkQlFYZEZPMGxCUXk5SExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1ZVRkJWU3hEUVVGRExFVkJRVVVzWlVGQlpUdERRVU5xUkN4RFFVRkRPMEZCUlVZc1RVRkJUU3hEUVVGRExFMUJRVTBzTUVKQlFUQkNMRWRCUTNGRU8wbEJRekZHTEVOQlFVTXNkVUpCUVhWQ0xFTkJRVU1zVjBGQlZ5eERRVUZETEVWQlFVVXNkVUpCUVhWQ08wTkJReTlFTEVOQlFVTTdRVUZGUml4TlFVRk5MRU5CUVVNc1RVRkJUU3huUWtGQlowSXNSMEZCUnp0SlFVTTVRaXhEUVVGRExIVkNRVUYxUWl4RFFVRkRMRTFCUVUwc1EwRkJReXhGUVVGRk8xRkJRMmhETEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zVTBGQlV5eERRVUZETEVWQlFVVXNORUpCUVRSQ0xFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1UwRkJVeXhEUVVGRE8wdEJRek5HTzBsQlEwUXNRMEZCUXl4MVFrRkJkVUlzUTBGQlF5eE5RVUZOTEVOQlFVTXNSVUZCUlR0UlFVTm9ReXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRmRCUVZjc1EwRkJReXhGUVVGRkxEUkNRVUUwUWl4RFFVRkRMR3RDUVVGclFpeERRVUZETEZkQlFWY3NRMEZCUXp0UlFVTTVSaXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRmRCUVZjc1EwRkJReXhGUVVGRkxEUkNRVUUwUWl4RFFVRkRMR3RDUVVGclFpeERRVUZETEZkQlFWY3NRMEZCUXp0UlFVTTVSaXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRk5CUVZNc1EwRkJReXhGUVVGRkxEUkNRVUUwUWl4RFFVRkRMR3RDUVVGclFpeERRVUZETEZOQlFWTXNRMEZCUXp0UlFVTXhSaXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRTFCUVUwc1EwRkJReXhGUVVGRkxEUkNRVUUwUWl4RFFVRkRMR3RDUVVGclFpeERRVUZETEUxQlFVMHNRMEZCUXp0TFFVTnlSanRKUVVORUxFTkJRVU1zZFVKQlFYVkNMRU5CUVVNc1VVRkJVU3hEUVVGRExFVkJRVVU3VVVGRGJFTXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFJRVUZSTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhSUVVGUkxFTkJRVU03VVVGRE9VWXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRGRFWXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFZRVUZWTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhWUVVGVkxFTkJRVU03VVVGRGJFY3NRMEZCUXl4dlFrRkJiMElzUTBGQlF5eGhRVUZoTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhoUVVGaExFTkJRVU03VVVGRGVFY3NRMEZCUXl4dlFrRkJiMElzUTBGQlF5eE5RVUZOTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhOUVVGTkxFTkJRVU03VVVGRE1VWXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFZRVUZWTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhWUVVGVkxFTkJRVU03VVVGRGJFY3NRMEZCUXl4dlFrRkJiMElzUTBGQlF5eFpRVUZaTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhaUVVGWkxFTkJRVU03VVVGRGRFY3NRMEZCUXl4dlFrRkJiMElzUTBGQlF5eGhRVUZoTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhoUVVGaExFTkJRVU03VVVGRGVFY3NRMEZCUXl4dlFrRkJiMElzUTBGQlF5eE5RVUZOTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhOUVVGTkxFTkJRVU03VVVGRE1VWXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eExRVUZMTEVOQlFVTXNSVUZCUlN3NFFrRkJPRUlzUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhMUVVGTExFTkJRVU03UzBGRGVrWTdTVUZEUkN4RFFVRkRMSFZDUVVGMVFpeERRVUZETEdGQlFXRXNRMEZCUXl4RlFVRkZPMUZCUTNaRExFTkJRVU1zZDBKQlFYZENMRU5CUVVNc1QwRkJUeXhEUVVGRExFVkJRVVVzYlVKQlFXMUNMRU5CUVVNc2QwSkJRWGRDTEVOQlFVTXNUMEZCVHl4RFFVRkRPMUZCUTNwR0xFTkJRVU1zZDBKQlFYZENMRU5CUVVNc1YwRkJWeXhEUVVGRExFVkJRVVVzYlVKQlFXMUNMRU5CUVVNc2QwSkJRWGRDTEVOQlFVTXNWMEZCVnl4RFFVRkRPMUZCUTJwSExFTkJRVU1zZDBKQlFYZENMRU5CUVVNc2FVSkJRV2xDTEVOQlFVTXNSVUZCUlN4dFFrRkJiVUlzUTBGQlF5eDNRa0ZCZDBJc1EwRkJReXhwUWtGQmFVSXNRMEZCUXp0UlFVTTNSeXhEUVVGRExIZENRVUYzUWl4RFFVRkRMSGxDUVVGNVFpeERRVUZETEVWQlEyeEVMRzFDUVVGdFFpeERRVUZETEhkQ1FVRjNRaXhEUVVGRExIbENRVUY1UWl4RFFVRkRPMHRCUXpGRk8wbEJRMFFzUTBGQlF5eDFRa0ZCZFVJc1EwRkJReXhOUVVGTkxFTkJRVU1zUlVGQlJUdFJRVU5vUXl4RFFVRkRMR3RDUVVGclFpeERRVUZETEZWQlFWVXNRMEZCUXl4RlFVRkZMRFJDUVVFMFFpeERRVUZETEd0Q1FVRnJRaXhEUVVGRExGVkJRVlVzUTBGQlF6dExRVU0zUmp0SlFVTkVMRU5CUVVNc2RVSkJRWFZDTEVOQlFVTXNVVUZCVVN4RFFVRkRMRVZCUVVVN1VVRkRiRU1zUTBGQlF5eHZRa0ZCYjBJc1EwRkJReXhuUWtGQlowSXNRMEZCUXl4RlFVRkZMRGhDUVVFNFFpeERRVUZETEc5Q1FVRnZRaXhEUVVGRExHZENRVUZuUWl4RFFVRkRPMHRCUXk5SE8wbEJRMFFzUTBGQlF5eDFRa0ZCZFVJc1EwRkJReXhYUVVGWExFTkJRVU1zUlVGQlJUdFJRVU55UXl4RFFVRkRMSFZDUVVGMVFpeERRVUZETEZkQlFWY3NRMEZCUXl4RlFVRkZMREJDUVVFd1FpeERRVUZETEhWQ1FVRjFRaXhEUVVGRExGZEJRVmNzUTBGQlF6dExRVU4yUnp0RFFVTkdMRU5CUVVNN1FVRkZSaXhOUVVGTkxFTkJRVU1zVFVGQlRTeG5Ra0ZCWjBJc1IwRkJjVUlzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4blFrRkJaMElzUTBGQlF6dExRVU0xUlN4TlFVRk5MRU5CUVVNc1EwRkJReXhIUVVGeFFpeEZRVUZGTEVkQlFVY3NSVUZCUlN4RlFVRkZPMGxCUTNKRExFdEJRVXNzVFVGQlRTeEhRVUZITEVsQlFVa3NUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhuUWtGQlowSXNRMEZCUXl4SFFVRjVRaXhEUVVGRExFTkJRVU03VVVGRGVFVXNSMEZCUnl4RFFVRkRMRWRCUVhsQ0xFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTTdTVUZGZGtNc1QwRkJUeXhIUVVGSExFTkJRVU03UVVGRFlpeERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNN1FVRnJRbFFzVFVGQlRTeFZRVUZWTEdOQlFXTXNRMEZCUXl4SlFVRnJRanRKUVVNdlF5eFBRVUZQTEdkQ1FVRm5RaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEZGQlFWRXNRMEZCUXp0QlFVTTFReXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVGRExFbEJRV3RDTzBsQlEycEVMRTlCUVU4c1owSkJRV2RDTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1ZVRkJWU3hEUVVGRE8wRkJRemxETEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc1kwRkJZeXhEUVVGRExFbEJRV3RDTzBsQlF5OURMRTlCUVU4c1owSkJRV2RDTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1VVRkJVU3hEUVVGRE8wRkJRelZETEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVZVc2NVSkJRWEZDTEVOQlFVTXNTVUZCYTBJN1NVRkRkRVFzVDBGQlR5eG5Ra0ZCWjBJc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeDFRa0ZCZFVJc1EwRkJReXhoUVVGaExFTkJRVU1zVVVGQlVTeEZRVUZGTEVOQlFVTTdRVUZEY0VZc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeGxRVUZsTEVOQlFVTXNTVUZCYTBJN1NVRkRhRVFzVDBGQlR5eG5Ra0ZCWjBJc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeDFRa0ZCZFVJc1EwRkJReXhOUVVGTkxFTkJRVU1zVVVGQlVTeEZRVUZGTEVOQlFVTTdRVUZETjBVc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeHRRa0ZCYlVJc1EwRkJReXhKUVVGclFqdEpRVU53UkN4UFFVRlBMR2RDUVVGblFpeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMSFZDUVVGMVFpeERRVUZETEZkQlFWY3NRMEZCUXl4UlFVRlJMRVZCUVVVc1EwRkJRenRCUVVOc1JpeERRVUZETzBGQlJVUXNaMGRCUVdkSE8wRkJRMmhITEUxQlFVMHNWVUZCVlN4cFFrRkJhVUlzUTBGQlF5eEZRVUZWTEVWQlFVVXNSVUZCVlR0SlFVTjBSQ3hKUVVGSkxFVkJRVVVzUTBGQlF5eE5RVUZOTEV0QlFVc3NSVUZCUlN4RFFVRkRMRTFCUVUwc1JVRkJSVHRSUVVNelFpeFBRVUZQTEVOQlFVTXNRMEZCUXp0TFFVTldPMU5CUVUwN1VVRkRUQ3hKUVVGSkxFbEJRVWtzUjBGQlZ5eERRVUZETEVOQlFVTTdVVUZEY2tJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTzFsQlEyaERMRWxCUVVrc1NVRkJTU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOcVF5eFBRVUZQTEVsQlFVa3NSMEZCUnl4RlFVRkZMRU5CUVVNc1RVRkJUU3hEUVVGRE8wdEJRM3BDTzBGQlEwZ3NRMEZCUXp0QlFVVkVMRTFCUVUwc1ZVRkJWU3h0UWtGQmJVSXNRMEZCUXl4RlFVRlZMRVZCUVVVc1JVRkJWVHRKUVVONFJDeFBRVUZQTEVWQlFVVXNTMEZCU3l4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXpOQ0xFTkJRVU03UVVGRlJDdzBSRUZCTkVRN1FVRkROVVFzVFVGQlRTeFBRVUZQTEU5QlFVODdTVUZEVWl4TlFVRk5MRU5CUVdVN1NVRkRja0lzVVVGQlVTeERRVUZ4UWp0SlFVVjJRenM3T3p0UFFVbEhPMGxCUTBnc1dVRkJXU3hOUVVGdlFqdFJRVU01UWl4SlFVRkpMRU5CUVVNc1RVRkJUU3hIUVVGSExFMUJRVTBzUTBGQlF6dFJRVU55UWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hIUVVGSExHZENRVUZuUWl4RFFVRkRMRTFCUVUwc1EwRkJkVUlzUTBGQlF6dEpRVU5xUlN4RFFVRkRPMGxCUlVRN096czdPMDlCUzBjN1NVRkRTU3hsUVVGbExFTkJRVU1zVFVGQmIwSTdVVUZEZWtNc1QwRkJUeXh4UWtGQmNVSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hsUVVGbExFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NiVUpCUVcxQ0xFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdTVUZEYWtjc1EwRkJRenRKUVVORU96czdPenRQUVV0SE8wbEJRMGtzVlVGQlZTeERRVUZETEVsQlFWVTdVVUZETVVJc1RVRkJUU3hKUVVGSkxFZEJSVTRzWjBKQlFXZENMRU5CUVVNN1VVRkRja0lzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF5eGpRVUZqTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJRenRaUVVONlJpeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRzFDUVVGdFFpeEpRVUZKTEVOQlFVTXNUVUZCVFN4clFrRkJhMElzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RFFVRkRMRU5CUVVNN1VVRkRia1lzVDBGQlR5eEpRVUZKTEVOQlFVTXNaVUZCWlN4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEzWkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJjVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpkRkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQmJVSXNRMEZCUXp0SlFVTjJSQ3hEUVVGRE8wbEJSVVE3T3pzN08wOUJTMGM3U1VGRFNTeE5RVUZOTEVOQlFVTXNiVUpCUVcxQ0xFTkJRVU1zVVVGQk5FSTdVVUZETlVRc1QwRkJUeXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEdkQ1FVRm5RaXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEYWtRc1EwRkJRenRKUVVWRU96dFBRVVZITzBsQlEwZ3NUVUZCVFN4TFFVRkxMR2xDUVVGcFFqdFJRVU14UWl4UFFVRlBMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1EwRkJRenRKUVVOMlF5eERRVUZETzBOQlEwWWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUpwYlhCdmNuUWdLaUJoY3lCbWJDQm1jbTl0SUNkbVlYTjBaWE4wTFd4bGRtVnVjMmgwWldsdUp6dGNibWx0Y0c5eWRDQjdhbUZ5YjFkcGJtdHNaWEo5SUdaeWIyMGdKMnBoY204dGQybHVhMnhsY2kxMGVYQmxjMk55YVhCMEp6dGNibWx0Y0c5eWRDQjdSR2x6ZEdGdVkyVk5aWFJ5YVdOOUlHWnliMjBnSjBCa1lYUmhaM0p2YXkxc2FXSnlZWEpwWlhNdmRYUnBiSE12YzNKakwzUjVjR1V0WkdWamJHRnlZWFJwYjI1ekp6dGNibWx0Y0c5eWRDQjdYRzRnSUdGemVXMXRaWFJ5YVdORWFYTjBZVzVqWlN4Y2JpQWdZbkpoZFc1Q2JHRnVjWFZsZEVScGMzUmhibU5sTEZ4dUlDQmpiM05wYm1WRWFYTjBZVzVqWlN4Y2JpQWdaR2xqWlVScGMzUmhibU5sTEZ4dUlDQmxkV05zYVdSbFlXNUVhWE4wWVc1alpTeGNiaUFnYUdGdGJXbHVaMFJwYzNSaGJtTmxMRnh1SUNCcmRXeGplbmx1YzJ0cFJHbHpkR0Z1WTJVc1hHNGdJRzFqUTI5dWJtRjFaMmhsZVVScGMzUmhibU5sTEZ4dUlDQnliMmR2ZEVkdmJHUmlaWEpuUkdsemRHRnVZMlVzWEc0Z0lISjFjM05sYkVScGMzUmhibU5sTEZ4dUlDQnpiMnRoYkVScGMzUmhibU5sTEZ4dUlDQjBZVzVwYlc5MGIwUnBjM1JoYm1ObExGeHVJQ0J1ZFcxbGNtbGpSR2x6ZEdGdVkyVXNYRzRnSUhSaGJtbHRiM1J2UkdsemRHRnVZMlZKYm5SQmNuSmhlU3hjYmlBZ2FXNTJaWEp6WlVOdmJXMXZia2wwWlcxelEyOTFiblFzWEc1OUlHWnliMjBnSnk0dUwyUnBjM1JoYm1ObExXMWxkSEpwWTNNdGJXVjBhRzlrY3ljN1hHNWNibWx0Y0c5eWRDQjdZMkZzWTNWc1lYUmxSWFZqYkdsa1pXRnVSR2x6ZEdGdVkyVjlJR1p5YjIwZ0owQmtZWFJoWjNKdmF5MXNhV0p5WVhKcFpYTXZkWFJwYkhNdmMzSmpMM1psWTNSdmNpMXZjR1Z5WVhScGIyNXpKenRjYm1sdGNHOXlkQ0JDYVhSQmNuSmhlU0JtY205dElDZEFaR0YwWVdkeWIyc3RiR2xpY21GeWFXVnpMM1YwYVd4ekwzTnlZeTlpYVhRdFlYSnlZWGtuTzF4dWFXMXdiM0owSUh0V1pXTjBiM0lzSUZOMGNtbHVaMFJwWTNScGIyNWhjbmw5SUdaeWIyMGdKMEJrWVhSaFozSnZheTFzYVdKeVlYSnBaWE12ZFhScGJITXZjM0pqTDNSNWNHVXRaR1ZqYkdGeVlYUnBiMjV6Snp0Y2JtbHRjRzl5ZENCN2JXMUVhWE4wWVc1alpVWjFibU4wYVc5dWN5d2dUVzFFYVhOMFlXNWpaVVoxYm1OMGFXOXVjMDVoYldWemZTQm1jbTl0SUNjdUxpOXRZV055YjIxdmJHVmpkV3hsTFdScGMzUmhibU5sTFdaMWJtTjBhVzl1Y3ljN1hHNXBiWEJ2Y25RZ2UwUnBjM1JoYm1ObFRXVjBjbWxqYzFOMVltcGxZM1J6TENCQ2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5eGNiaUFnVTNSeWFXNW5UV1YwY21samMwNWhiV1Z6TENCV1pXTjBiM0pOWlhSeWFXTnpUbUZ0WlhNc0lFNTFiV0psY2sxbGRISnBZM05PWVcxbGN5d2dTVzUwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE1zWEc0Z0lFNTFiV0psY2tGeWNtRjVUV1YwY21samMwNWhiV1Z6ZlNCbWNtOXRJQ2N1TDJOdmJuTjBjeWM3WEc1Y2JseHVaWGh3YjNKMElHTnZibk4wSUhabFkzUnZja1JwYzNSaGJtTmxUV1YwY21samMwMWxkR2h2WkhNNklIc2dXMjVoYldVNklITjBjbWx1WjEwNklDaDRPaUJXWldOMGIzSXNJSGs2SUZabFkzUnZjaWtnUFQ0Z2JuVnRZbVZ5SUgwZ1BTQjdYRzRnSUZ0V1pXTjBiM0pOWlhSeWFXTnpUbUZ0WlhNdVJYVmpiR2xrWldGdVhUb2dZMkZzWTNWc1lYUmxSWFZqYkdsa1pXRnVSR2x6ZEdGdVkyVXNYRzU5TzF4dVhHNWxlSEJ2Y25RZ1kyOXVjM1FnYzNSeWFXNW5SR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrY3pvZ2V5QmJibUZ0WlRvZ2MzUnlhVzVuWFRvZ0tIZzZJSE4wY21sdVp5d2dlVG9nYzNSeWFXNW5LU0E5UGlCdWRXMWlaWElnZlNBOUlIdGNiaUFnVzFOMGNtbHVaMDFsZEhKcFkzTk9ZVzFsY3k1TVpYWmxibk5vZEdWcGJsMDZJR1pzTG1ScGMzUmhibU5sTEZ4dUlDQmJVM1J5YVc1blRXVjBjbWxqYzA1aGJXVnpMa3BoY205WGFXNXJiR1Z5WFRvZ2FtRnliMWRwYm10c1pYSXNYRzRnSUZ0VGRISnBibWROWlhSeWFXTnpUbUZ0WlhNdVRXRnVhR0YwZEdGdVhUb2diV0Z1YUdGMGRHRnVSR2x6ZEdGdVkyVXNYRzRnSUZ0VGRISnBibWROWlhSeWFXTnpUbUZ0WlhNdVQyNWxhRzkwWFRvZ1kyRjBaV2R2Y21sallXeEVhWE4wWVc1alpTeGNibjA3WEc1Y2JtVjRjRzl5ZENCamIyNXpkQ0JpYVhSQmNuSmhlVVJwYzNSaGJtTmxUV1YwY21samMwMWxkR2h2WkhNNklIc2dXMjVoYldVNklITjBjbWx1WjEwNklDaDRPaUJDYVhSQmNuSmhlU3dnZVRvZ1FtbDBRWEp5WVhrcElEMCtJRzUxYldKbGNpQjlJRDBnZTF4dUlDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11VkdGdWFXMXZkRzlkT2lCMFlXNXBiVzkwYjBScGMzUmhibU5sTEZ4dUlDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UkdsalpWMDZJR1JwWTJWRWFYTjBZVzVqWlN4Y2JpQWdXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGtGemVXMXRaWFJ5YVdOZE9pQmhjM2x0YldWMGNtbGpSR2x6ZEdGdVkyVXNYRzRnSUZ0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUNjbUYxYmtKc1lXNXhkV1YwWFRvZ1luSmhkVzVDYkdGdWNYVmxkRVJwYzNSaGJtTmxMRnh1SUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVRMjl6YVc1bFhUb2dZMjl6YVc1bFJHbHpkR0Z1WTJVc1hHNGdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1TGRXeGplbmx1YzJ0cFhUb2dhM1ZzWTNwNWJuTnJhVVJwYzNSaGJtTmxMRnh1SUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVUV05EYjI1dVlYVm5hR1Y1WFRvZ2JXTkRiMjV1WVhWbmFHVjVSR2x6ZEdGdVkyVXNYRzRnSUZ0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NVNiMmR2ZEVkdmJHUmlaWEpuWFRvZ2NtOW5iM1JIYjJ4a1ltVnlaMFJwYzNSaGJtTmxMRnh1SUNCYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVVblZ6YzJWc1hUb2djblZ6YzJWc1JHbHpkR0Z1WTJVc1hHNGdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1VGIydGhiRjA2SUhOdmEyRnNSR2x6ZEdGdVkyVXNYRzRnSUZ0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUlZVzF0YVc1blhUb2dhR0Z0YldsdVowUnBjM1JoYm1ObExGeHVJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVJYVmpiR2xrWldGdVhUb2daWFZqYkdsa1pXRnVSR2x6ZEdGdVkyVXNYRzU5TzF4dVhHNWxlSEJ2Y25RZ1kyOXVjM1FnYVc1MFFYSnlZWGxFYVhOMFlXNWpaVTFsZEhKcFkzTk5aWFJvYjJSek9pQjdJRnR1WVcxbE9pQnpkSEpwYm1kZE9pQW9lRG9nVldsdWRETXlRWEp5WVhrc0lIazZJRlZwYm5Rek1rRnljbUY1S1NBOVBpQnVkVzFpWlhJZ2ZTQTlJSHRjYmlBZ1cwbHVkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMbFJoYm1sdGIzUnZTVzUwUVhKeVlYbGRPaUIwWVc1cGJXOTBiMFJwYzNSaGJtTmxTVzUwUVhKeVlYa3NYRzU5TzF4dVhHNWxlSEJ2Y25RZ1kyOXVjM1FnYm5WdFltVnlSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrY3pvZ2V5QmJibUZ0WlRvZ2MzUnlhVzVuWFRvZ0tHRnlaM002SUdGdWVTa2dQVDRnS0hnNklHNTFiV0psY2l3Z2VUb2diblZ0WW1WeUtTQTlQaUJ1ZFcxaVpYSWdmU0E5SUh0Y2JpQWdXMDUxYldKbGNrMWxkSEpwWTNOT1lXMWxjeTVFYVdabVpYSmxibU5sWFRvZ2JuVnRaWEpwWTBScGMzUmhibU5sTEZ4dWZUdGNibHh1Wlhod2IzSjBJR052Ym5OMElHNTFiV0psY2tGeWNtRjVSR2x6ZEdGdVkyVk5aWFJ5YVdOek9seHVleUJiYm1GdFpUb2djM1J5YVc1blhUb2dLR0Z5WjNNNklHRnVlU2tnUFQ0Z0tIZzZJRUZ5Y21GNVRHbHJaVHh1ZFcxaVpYSStMQ0I1T2lCQmNuSmhlVXhwYTJVOGJuVnRZbVZ5UGlrZ1BUNGdiblZ0WW1WeUlIMGdQU0I3WEc0Z0lGdE9kVzFpWlhKQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1RGIyMXRiMjVKZEdWdGMxMDZJR2x1ZG1WeWMyVkRiMjF0YjI1SmRHVnRjME52ZFc1MExGeHVmVHRjYmx4dVpYaHdiM0owSUdOdmJuTjBJRUYyWVdsc1lXSnNaVTFsZEhKcFkzTWdQU0I3WEc0Z0lGdEVhWE4wWVc1alpVMWxkSEpwWTNOVGRXSnFaV04wY3k1V1pXTjBiM0pkT2lCN1hHNGdJQ0FnVzFabFkzUnZjazFsZEhKcFkzTk9ZVzFsY3k1RmRXTnNhV1JsWVc1ZE9pQjJaV04wYjNKRWFYTjBZVzVqWlUxbGRISnBZM05OWlhSb2IyUnpXMVpsWTNSdmNrMWxkSEpwWTNOT1lXMWxjeTVGZFdOc2FXUmxZVzVkTEZ4dUlDQjlMRnh1SUNCYlJHbHpkR0Z1WTJWTlpYUnlhV056VTNWaWFtVmpkSE11VTNSeWFXNW5YVG9nZTF4dUlDQWdJRnRUZEhKcGJtZE5aWFJ5YVdOelRtRnRaWE11VEdWMlpXNXphSFJsYVc1ZE9pQnpkSEpwYm1kRWFYTjBZVzVqWlUxbGRISnBZM05OWlhSb2IyUnpXMU4wY21sdVowMWxkSEpwWTNOT1lXMWxjeTVNWlhabGJuTm9kR1ZwYmwwc1hHNGdJQ0FnVzFOMGNtbHVaMDFsZEhKcFkzTk9ZVzFsY3k1S1lYSnZWMmx1YTJ4bGNsMDZJSE4wY21sdVowUnBjM1JoYm1ObFRXVjBjbWxqYzAxbGRHaHZaSE5iVTNSeWFXNW5UV1YwY21samMwNWhiV1Z6TGtwaGNtOVhhVzVyYkdWeVhTeGNiaUFnSUNCYlUzUnlhVzVuVFdWMGNtbGpjMDVoYldWekxrMWhibWhoZEhSaGJsMDZJSE4wY21sdVowUnBjM1JoYm1ObFRXVjBjbWxqYzAxbGRHaHZaSE5iVTNSeWFXNW5UV1YwY21samMwNWhiV1Z6TGsxaGJtaGhkSFJoYmwwc1hHNGdJQ0FnVzFOMGNtbHVaMDFsZEhKcFkzTk9ZVzFsY3k1UGJtVm9iM1JkT2lCemRISnBibWRFYVhOMFlXNWpaVTFsZEhKcFkzTk5aWFJvYjJSelcxTjBjbWx1WjAxbGRISnBZM05PWVcxbGN5NVBibVZvYjNSZExGeHVJQ0I5TEZ4dUlDQmJSR2x6ZEdGdVkyVk5aWFJ5YVdOelUzVmlhbVZqZEhNdVFtbDBRWEp5WVhsZE9pQjdYRzRnSUNBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMbFJoYm1sdGIzUnZYVG9nWW1sMFFYSnlZWGxFYVhOMFlXNWpaVTFsZEhKcFkzTk5aWFJvYjJSelcwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMbFJoYm1sdGIzUnZYU3hjYmlBZ0lDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UkdsalpWMDZJR0pwZEVGeWNtRjVSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrYzF0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUVhV05sWFN4Y2JpQWdJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVFYTjViVzFsZEhKcFkxMDZJR0pwZEVGeWNtRjVSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrYzF0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUJjM2x0YldWMGNtbGpYU3hjYmlBZ0lDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11UW5KaGRXNUNiR0Z1Y1hWbGRGMDZJR0pwZEVGeWNtRjVSR2x6ZEdGdVkyVk5aWFJ5YVdOelRXVjBhRzlrYzF0Q2FYUkJjbkpoZVUxbGRISnBZM05PWVcxbGN5NUNjbUYxYmtKc1lXNXhkV1YwWFN4Y2JpQWdJQ0JiUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVEyOXphVzVsWFRvZ1ltbDBRWEp5WVhsRWFYTjBZVzVqWlUxbGRISnBZM05OWlhSb2IyUnpXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGtOdmMybHVaVjBzWEc0Z0lDQWdXMEpwZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6TGt0MWJHTjZlVzV6YTJsZE9pQmlhWFJCY25KaGVVUnBjM1JoYm1ObFRXVjBjbWxqYzAxbGRHaHZaSE5iUW1sMFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVMzVnNZM3A1Ym5OcmFWMHNYRzRnSUNBZ1cwSnBkRUZ5Y21GNVRXVjBjbWxqYzA1aGJXVnpMazFqUTI5dWJtRjFaMmhsZVYwNklHSnBkRUZ5Y21GNVJHbHpkR0Z1WTJWTlpYUnlhV056VFdWMGFHOWtjMXRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1TlkwTnZibTVoZFdkb1pYbGRMRnh1SUNBZ0lGdENhWFJCY25KaGVVMWxkSEpwWTNOT1lXMWxjeTVTYjJkdmRFZHZiR1JpWlhKblhUb2dZbWwwUVhKeVlYbEVhWE4wWVc1alpVMWxkSEpwWTNOTlpYUm9iMlJ6VzBKcGRFRnljbUY1VFdWMGNtbGpjMDVoYldWekxsSnZaMjkwUjI5c1pHSmxjbWRkTEZ4dUlDQWdJRnRDYVhSQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1U2RYTnpaV3hkT2lCaWFYUkJjbkpoZVVScGMzUmhibU5sVFdWMGNtbGpjMDFsZEdodlpITmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11VW5WemMyVnNYU3hjYmlBZ0lDQmJRbWwwUVhKeVlYbE5aWFJ5YVdOelRtRnRaWE11VTI5cllXeGRPaUJpYVhSQmNuSmhlVVJwYzNSaGJtTmxUV1YwY21samMwMWxkR2h2WkhOYlFtbDBRWEp5WVhsTlpYUnlhV056VG1GdFpYTXVVMjlyWVd4ZExGeHVJQ0I5TEZ4dUlDQmJSR2x6ZEdGdVkyVk5aWFJ5YVdOelUzVmlhbVZqZEhNdVRXRmpjbTlOYjJ4bFkzVnNaVjA2SUhzZ0x5OGdiM0IwYVc5dVlXd2dZWEpuY3lCdVpXVmtaV1FnWm05eUlHMWhZM0p2Ylc5c1pXTjFiR1VnWm5WdVkzUnBiMjV6SUhkb2FXTm9JR2x1YVhScFlXeHBlbVVnZEdobGJWeHVJQ0FnSUZ0TmJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1elRtRnRaWE11U0VGTlRVbE9SMTA2SUcxdFJHbHpkR0Z1WTJWR2RXNWpkR2x2Ym5OYlRXMUVhWE4wWVc1alpVWjFibU4wYVc5dWMwNWhiV1Z6TGtoQlRVMUpUa2RkTEZ4dUlDQWdJRnROYlVScGMzUmhibU5sUm5WdVkzUnBiMjV6VG1GdFpYTXVURVZXUlU1VFNGUkZTVTVkT2lCdGJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1elcwMXRSR2x6ZEdGdVkyVkdkVzVqZEdsdmJuTk9ZVzFsY3k1TVJWWkZUbE5JVkVWSlRsMHNYRzRnSUNBZ1cwMXRSR2x6ZEdGdVkyVkdkVzVqZEdsdmJuTk9ZVzFsY3k1T1JVVkVURVZOUVU1T1gxZFZUbE5EU0YwNklHMXRSR2x6ZEdGdVkyVkdkVzVqZEdsdmJuTmJUVzFFYVhOMFlXNWpaVVoxYm1OMGFXOXVjMDVoYldWekxrNUZSVVJNUlUxQlRrNWZWMVZPVTBOSVhTeGNiaUFnSUNCYlRXMUVhWE4wWVc1alpVWjFibU4wYVc5dWMwNWhiV1Z6TGsxUFRrOU5SVkpmUTBoRlRVbERRVXhmUkVsVFZFRk9RMFZkT2x4dUlDQWdJQ0FnYlcxRWFYTjBZVzVqWlVaMWJtTjBhVzl1YzF0TmJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1elRtRnRaWE11VFU5T1QwMUZVbDlEU0VWTlNVTkJURjlFU1ZOVVFVNURSVjBzWEc0Z0lIMHNYRzRnSUZ0RWFYTjBZVzVqWlUxbGRISnBZM05UZFdKcVpXTjBjeTVPZFcxaVpYSmRPaUI3WEc0Z0lDQWdXMDUxYldKbGNrMWxkSEpwWTNOT1lXMWxjeTVFYVdabVpYSmxibU5sWFRvZ2JuVnRZbVZ5UkdsemRHRnVZMlZOWlhSeWFXTnpUV1YwYUc5a2MxdE9kVzFpWlhKTlpYUnlhV056VG1GdFpYTXVSR2xtWm1WeVpXNWpaVjBzWEc0Z0lIMHNYRzRnSUZ0RWFYTjBZVzVqWlUxbGRISnBZM05UZFdKcVpXTjBjeTVKYm5SQmNuSmhlVjA2SUh0Y2JpQWdJQ0JiU1c1MFFYSnlZWGxOWlhSeWFXTnpUbUZ0WlhNdVZHRnVhVzF2ZEc5SmJuUkJjbkpoZVYwNklHbHVkRUZ5Y21GNVJHbHpkR0Z1WTJWTlpYUnlhV056VFdWMGFHOWtjMXRKYm5SQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1VVlXNXBiVzkwYjBsdWRFRnljbUY1WFN4Y2JpQWdmU3hjYmlBZ1cwUnBjM1JoYm1ObFRXVjBjbWxqYzFOMVltcGxZM1J6TGs1MWJXSmxja0Z5Y21GNVhUb2dlMXh1SUNBZ0lGdE9kVzFpWlhKQmNuSmhlVTFsZEhKcFkzTk9ZVzFsY3k1RGIyMXRiMjVKZEdWdGMxMDZJRzUxYldKbGNrRnljbUY1UkdsemRHRnVZMlZOWlhSeWFXTnpXMDUxYldKbGNrRnljbUY1VFdWMGNtbGpjMDVoYldWekxrTnZiVzF2YmtsMFpXMXpYU3hjYmlBZ2ZTeGNibjA3WEc1Y2JtVjRjRzl5ZENCamIyNXpkQ0JOWlhSeWFXTlViMFJoZEdGVWVYQmxPaUJUZEhKcGJtZEVhV04wYVc5dVlYSjVJRDBnVDJKcVpXTjBMbXRsZVhNb1FYWmhhV3hoWW14bFRXVjBjbWxqY3lsY2JpQWdMbkpsWkhWalpTZ29jbVYwT2lCVGRISnBibWRFYVdOMGFXOXVZWEo1TENCclpYa3BJRDArSUh0Y2JpQWdJQ0JtYjNJZ0tHTnZibk4wSUhaaGJDQnZaaUJQWW1wbFkzUXVhMlY1Y3loQmRtRnBiR0ZpYkdWTlpYUnlhV056VzJ0bGVTQmhjeUJCZG1GcGJHRmliR1ZFWVhSaFZIbHdaWE5kS1NsY2JpQWdJQ0FnSUhKbGRGdDJZV3dnWVhNZ1FYWmhhV3hoWW14bFJHRjBZVlI1Y0dWelhTQTlJR3RsZVR0Y2JseHVJQ0FnSUhKbGRIVnliaUJ5WlhRN1hHNGdJSDBzSUh0OUtUdGNibHh1Wlhod2IzSjBJSFI1Y0dVZ1FYWmhhV3hoWW14bFJHRjBZVlI1Y0dWeklEMGdhMlY1YjJZZ2RIbHdaVzltSUVGMllXbHNZV0pzWlUxbGRISnBZM003WEc1bGVIQnZjblFnZEhsd1pTQldaV04wYjNKTlpYUnlhV056SUQwZ2EyVjViMllnZEhsd1pXOW1JRUYyWVdsc1lXSnNaVTFsZEhKcFkzTmJSR2x6ZEdGdVkyVk5aWFJ5YVdOelUzVmlhbVZqZEhNdVZtVmpkRzl5WFR0Y2JtVjRjRzl5ZENCMGVYQmxJRk4wY21sdVowMWxkSEpwWTNNZ1BTQnJaWGx2WmlCMGVYQmxiMllnUVhaaGFXeGhZbXhsVFdWMGNtbGpjMXRFYVhOMFlXNWpaVTFsZEhKcFkzTlRkV0pxWldOMGN5NVRkSEpwYm1kZE8xeHVaWGh3YjNKMElIUjVjR1VnUW1sMFFYSnlZWGxOWlhSeWFXTnpJRDBnYTJWNWIyWWdkSGx3Wlc5bUlFRjJZV2xzWVdKc1pVMWxkSEpwWTNOYlJHbHpkR0Z1WTJWTlpYUnlhV056VTNWaWFtVmpkSE11UW1sMFFYSnlZWGxkTzF4dVpYaHdiM0owSUhSNWNHVWdUblZ0WW1WeVRXVjBjbWxqY3lBOUlHdGxlVzltSUhSNWNHVnZaaUJCZG1GcGJHRmliR1ZOWlhSeWFXTnpXMFJwYzNSaGJtTmxUV1YwY21samMxTjFZbXBsWTNSekxrNTFiV0psY2wwN1hHNWxlSEJ2Y25RZ2RIbHdaU0JKYm5SQmNuSmhlVTFsZEhKcFkzTWdQU0JyWlhsdlppQjBlWEJsYjJZZ1FYWmhhV3hoWW14bFRXVjBjbWxqYzF0RWFYTjBZVzVqWlUxbGRISnBZM05UZFdKcVpXTjBjeTVKYm5SQmNuSmhlVjA3WEc1bGVIQnZjblFnZEhsd1pTQk9kVzFpWlhKQmNuSmhlVTFsZEhKcFkzTWdQU0JyWlhsdlppQjBlWEJsYjJZZ1FYWmhhV3hoWW14bFRXVjBjbWxqYzF0RWFYTjBZVzVqWlUxbGRISnBZM05UZFdKcVpXTjBjeTVPZFcxaVpYSkJjbkpoZVYwN1hHNWxlSEJ2Y25RZ2RIbHdaU0JMYm05M2JrMWxkSEpwWTNNZ1BTQlRkSEpwYm1kTlpYUnlhV056SUh3Z1FtbDBRWEp5WVhsTlpYUnlhV056SUh3Z1ZtVmpkRzl5VFdWMGNtbGpjeUI4WEc0Z0lFMXRSR2x6ZEdGdVkyVkdkVzVqZEdsdmJuTk9ZVzFsY3lCOElFNTFiV0psY2sxbGRISnBZM05PWVcxbGN5QjhJRWx1ZEVGeWNtRjVUV1YwY21samMwNWhiV1Z6SUh3Z1RuVnRZbVZ5UVhKeVlYbE5aWFJ5YVdOelRtRnRaWE03WEc1Y2JtVjRjRzl5ZENCMGVYQmxJRlpoYkdsa1ZIbHdaWE1nUFZ4dUlDQjdJR1JoZEdFNklITjBjbWx1WjF0ZExDQnRaWFJ5YVdNNklGTjBjbWx1WjAxbGRISnBZM01nZkNCTmJVUnBjM1JoYm1ObFJuVnVZM1JwYjI1elRtRnRaWE1nZlNCOFhHNGdJSHNnWkdGMFlUb2dWbVZqZEc5eVcxMHNJRzFsZEhKcFl6b2dWbVZqZEc5eVRXVjBjbWxqY3lCOUlIeGNiaUFnZXlCa1lYUmhPaUJDYVhSQmNuSmhlVnRkTENCdFpYUnlhV002SUVKcGRFRnljbUY1VFdWMGNtbGpjeUI5SUh4Y2JpQWdleUJrWVhSaE9pQnVkVzFpWlhKYlhTd2diV1YwY21sak9pQk9kVzFpWlhKTlpYUnlhV056VG1GdFpYTWdmVHRjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdselUzUnlhVzVuVFdWMGNtbGpLRzVoYldVNklFdHViM2R1VFdWMGNtbGpjeWtnZTF4dUlDQnlaWFIxY200Z1RXVjBjbWxqVkc5RVlYUmhWSGx3WlZ0dVlXMWxYU0E5UFNBblUzUnlhVzVuSnp0Y2JuMWNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR2x6UW1sMFFYSnlZWGxOWlhSeWFXTW9ibUZ0WlRvZ1MyNXZkMjVOWlhSeWFXTnpLU0I3WEc0Z0lISmxkSFZ5YmlCTlpYUnlhV05VYjBSaGRHRlVlWEJsVzI1aGJXVmRJRDA5SUNkQ2FYUkJjbkpoZVNjN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJwYzFabFkzUnZjazFsZEhKcFl5aHVZVzFsT2lCTGJtOTNiazFsZEhKcFkzTXBJSHRjYmlBZ2NtVjBkWEp1SUUxbGRISnBZMVJ2UkdGMFlWUjVjR1ZiYm1GdFpWMGdQVDBnSjFabFkzUnZjaWM3WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnBjMDFoWTNKdlRXOXNaV04xYkdWTlpYUnlhV01vYm1GdFpUb2dTMjV2ZDI1TlpYUnlhV056S1NCN1hHNGdJSEpsZEhWeWJpQk5aWFJ5YVdOVWIwUmhkR0ZVZVhCbFcyNWhiV1ZkSUQwOUlFUnBjM1JoYm1ObFRXVjBjbWxqYzFOMVltcGxZM1J6TGsxaFkzSnZUVzlzWldOMWJHVXVkRzlUZEhKcGJtY29LVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHbHpUblZ0WlhKcFkwMWxkSEpwWXlodVlXMWxPaUJMYm05M2JrMWxkSEpwWTNNcElIdGNiaUFnY21WMGRYSnVJRTFsZEhKcFkxUnZSR0YwWVZSNWNHVmJibUZ0WlYwZ1BUMGdSR2x6ZEdGdVkyVk5aWFJ5YVdOelUzVmlhbVZqZEhNdVRuVnRZbVZ5TG5SdlUzUnlhVzVuS0NrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJwYzA1MWJXSmxja0Z5Y21GNVRXVjBjbWxqS0c1aGJXVTZJRXR1YjNkdVRXVjBjbWxqY3lrZ2UxeHVJQ0J5WlhSMWNtNGdUV1YwY21salZHOUVZWFJoVkhsd1pWdHVZVzFsWFNBOVBTQkVhWE4wWVc1alpVMWxkSEpwWTNOVGRXSnFaV04wY3k1T2RXMWlaWEpCY25KaGVTNTBiMU4wY21sdVp5Z3BPMXh1ZlZ4dVhHNHZLaW9nVFdGdWFHRjBkR0Z1SUdScGMzUmhibU5sSUdKbGRIZGxaVzRnZEhkdklITmxjWFZsYm1ObGN5QW9iV0YwWTJnZ0xTQXdMQ0J0YVhOdFlYUmphQ0F0SURFcElHNXZjbTFoYkdsNlpXUWdabTl5SUd4bGJtZDBhQzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdFlXNW9ZWFIwWVc1RWFYTjBZVzVqWlNoek1Ub2djM1J5YVc1bkxDQnpNam9nYzNSeWFXNW5LVG9nYm5WdFltVnlJSHRjYmlBZ2FXWWdLSE14TG14bGJtZDBhQ0FoUFQwZ2N6SXViR1Z1WjNSb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SURFN1hHNGdJSDBnWld4elpTQjdYRzRnSUNBZ2JHVjBJR1JwYzNRNklHNTFiV0psY2lBOUlEQTdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREU3SUdrZ1BDQnpNUzVzWlc1bmRHZzdJR2tyS3lsY2JpQWdJQ0FnSUdScGMzUWdLejBnY3pGYmFWMGdQVDBnY3pKYmFWMGdQeUF3SURvZ01UdGNiaUFnSUNCeVpYUjFjbTRnWkdsemRDQXZJSE14TG14bGJtZDBhRHRjYmlBZ2ZWeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWTJGMFpXZHZjbWxqWVd4RWFYTjBZVzVqWlNoek1Ub2djM1J5YVc1bkxDQnpNam9nYzNSeWFXNW5LVG9nYm5WdFltVnlJSHRjYmlBZ2NtVjBkWEp1SUhNeElEMDlQU0J6TWlBL0lEQWdPaUF4TzF4dWZWeHVYRzR2S2lvZ1ZXNXBabWxsWkNCamJHRnpjeUJwYlhCc1pXMWxiblJwYm1jZ1pHbG1abVZ5Wlc1MElITjBjbWx1WnlCdFpXRnpkWEpsY3k0Z0tpOWNibVY0Y0c5eWRDQmpiR0Z6Y3lCTlpXRnpkWEpsSUh0Y2JpQWdjSEp2ZEdWamRHVmtJRzFsZEdodlpEb2dTMjV2ZDI1TlpYUnlhV056TzF4dUlDQndjbTkwWldOMFpXUWdaR0YwWVZSNWNHVTZJRUYyWVdsc1lXSnNaVVJoZEdGVWVYQmxjenRjYmx4dUlDQXZLaXBjYmlBZ0lDb2dRM0psWVhSbGN5QmhiaUJwYm5OMFlXNWpaU0J2WmlCTlpXRnpkWEpsSUhkcGRHZ2dMbHh1SUNBZ0tpQkFjR0Z5WVcwZ2UzTjBjbWx1WjMwZ2JXVjBhRzlrSUUxbGRHaHZaQ0IwYnlCallXeGpkV3hoZEdVZ1pHbHpkR0Z1WTJVZ1ltVjBkMlZsYmlCemRISnBibWR6TGx4dUlDQWdLaUJBYldWdFltVnliMllnVFdWaGMzVnlaWEpjYmlBZ0lDb3ZYRzRnSUdOdmJuTjBjblZqZEc5eUtHMWxkR2h2WkRvZ1MyNXZkMjVOWlhSeWFXTnpLU0I3WEc0Z0lDQWdkR2hwY3k1dFpYUm9iMlFnUFNCdFpYUm9iMlE3WEc0Z0lDQWdkR2hwY3k1a1lYUmhWSGx3WlNBOUlFMWxkSEpwWTFSdlJHRjBZVlI1Y0dWYmJXVjBhRzlrWFNCaGN5QkJkbUZwYkdGaWJHVkVZWFJoVkhsd1pYTTdYRzRnSUgxY2JseHVJQ0F2S2lwY2JpQWdJQ29nVW1WMGRYSnVjeUIwY25WbElHbG1JSFJvWlNCdFpYUnlhV01nYm1WbFpITWdZWEpuZFcxbGJuUnpJSFJ2SUdKbElHTmhiR04xYkdGMFpXUXVYRzRnSUNBcUlFQndZWEpoYlNCN1MyNXZkMjVOWlhSeWFXTnpmU0J0WlhSb2IyUWdUV1YwY21saklIUnZJR05vWldOcklHbG1JR2wwSUc1bFpXUnpJR0Z5WjNWdFpXNTBjeTVjYmlBZ0lDb2dRSEpsZEhWeWJpQjdZbTl2YkdWaGJuMGdWSEoxWlNCcFppQjBhR1VnYldWMGNtbGpJRzVsWldSeklHRnlaM1Z0Wlc1MGN5NWNiaUFnSUNvZ1FHMWxiV0psY205bUlFMWxZWE4xY21WY2JpQWdJQ292WEc0Z0lIQjFZbXhwWXlCdFpYUnlhV05PWldWa2MwRnlaM01vYldWMGFHOWtPaUJMYm05M2JrMWxkSEpwWTNNcE9pQmliMjlzWldGdUlIdGNiaUFnSUNCeVpYUjFjbTRnYVhOTllXTnliMDF2YkdWamRXeGxUV1YwY21saktHMWxkR2h2WkNrZ2ZId2dhWE5PZFcxbGNtbGpUV1YwY21saktHMWxkR2h2WkNrZ2ZId2dhWE5PZFcxaVpYSkJjbkpoZVUxbGRISnBZeWh0WlhSb2IyUXBPMXh1SUNCOVhHNGdJQzhxS2x4dUlDQWdLaUJTWlhSMWNtNXpJR04xYzNSdmJTQnpkSEpwYm1jZ1pHbHpkR0Z1WTJVZ1puVnVZM1JwYjI0Z2MzQmxZMmxtYVdWa0xseHVJQ0FnS2lCQWNHRnlZVzBnZTI5d2RITjlJRzl3ZEhNZ1QzQjBhVzl1Y3lCbWIzSWdkR2hsSUcxbFlYTjFjbVV1SUhWelpXUWdabTl5SUcxaFkzSnZiVzlzWldOMWJHVWdaR2x6ZEdGdVkyVnpYRzRnSUNBcUlFQnlaWFIxY200Z2UwUnBjM1JoYm1ObFRXVjBjbWxqZlNCRFlXeHNZbUZqYXlCdlppQjBhR1VnYldWaGMzVnlaU0JqYUc5elpXNHVYRzRnSUNBcUlFQnRaVzFpWlhKdlppQk5aV0Z6ZFhKbGNseHVJQ0FnS2k5Y2JpQWdjSFZpYkdsaklHZGxkRTFsWVhOMWNtVW9iM0IwY3o4NklHRnVlU2s2SUVScGMzUmhibU5sVFdWMGNtbGpJSHRjYmlBZ0lDQmpiMjV6ZENCa2FXTjBPaUI3SUZ0clpYazZJSE4wY21sdVoxMDZYRzRnSUNBZ0lDQjdXMnRsZVRJNklITjBjbWx1WjEwNklFUnBjM1JoYm1ObFRXVjBjbWxqSUh3Z0tDaHZjSFJ6T2lCaGJua3BJRDArSUVScGMzUmhibU5sVFdWMGNtbGpLWDFjYmlBZ0lDQjlJRDBnUVhaaGFXeGhZbXhsVFdWMGNtbGpjenRjYmlBZ0lDQnBaaUFvSVdScFkzUXVhR0Z6VDNkdVVISnZjR1Z5ZEhrb2RHaHBjeTVrWVhSaFZIbHdaU2tnZkh3Z0lXUnBZM1JiZEdocGN5NWtZWFJoVkhsd1pWMHVhR0Z6VDNkdVVISnZjR1Z5ZEhrb2RHaHBjeTV0WlhSb2IyUXBLVnh1SUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtHQlZibXR1YjNkdUlHMWxZWE4xY21VZ0pIdDBhR2x6TG0xbGRHaHZaSDBnWm05eUlHUmhkR0VnZEhsd1pTQWtlM1JvYVhNdVpHRjBZVlI1Y0dWOVlDazdYRzRnSUNBZ2NtVjBkWEp1SUhSb2FYTXViV1YwY21salRtVmxaSE5CY21kektIUm9hWE11YldWMGFHOWtLU0EvWEc0Z0lDQWdJQ0FvWkdsamRGdDBhR2x6TG1SaGRHRlVlWEJsWFZ0MGFHbHpMbTFsZEdodlpGMGdZWE1nS0NodmNIUnpPaUJoYm5rcElEMCtJRVJwYzNSaGJtTmxUV1YwY21saktTa29iM0IwY3lrZ09seHVJQ0FnSUNBZ1pHbGpkRnQwYUdsekxtUmhkR0ZVZVhCbFhWdDBhR2x6TG0xbGRHaHZaRjBnWVhNZ1JHbHpkR0Z1WTJWTlpYUnlhV003WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1VtVjBkWEp1Y3lCamRYTjBiMjBnYzNSeWFXNW5JR1JwYzNSaGJtTmxJR0o1SUhSb1pTQm5hWFpsYmlCa1lYUmhJSFI1Y0dVdVhHNGdJQ0FxSUVCd1lYSmhiU0I3UVhaaGFXeGhZbXhsUkdGMFlWUjVjR1Z6ZlNCa1lYUmhWSGx3WlNCTlpYUnlhV01uY3lCa1lYUmhJSFI1Y0dWY2JpQWdJQ29nUUhKbGRIVnliaUI3YzNSeWFXNW5XMTE5SUUxbGRISnBZeUJ1WVcxbGN5QjNhR2xqYUNCbGVIQmxZM1J6SUhSb1pTQm5hWFpsYmlCa1lYUmhJSFI1Y0dWY2JpQWdJQ29nUUcxbGJXSmxjbTltSUUxbFlYTjFjbVZ5WEc0Z0lDQXFMMXh1SUNCd2RXSnNhV01nYzNSaGRHbGpJR2RsZEUxbGRISnBZMEo1UkdGMFlWUjVjR1VvWkdGMFlWUjVjR1U2SUVGMllXbHNZV0pzWlVSaGRHRlVlWEJsY3lrNklITjBjbWx1WjF0ZElIdGNiaUFnSUNCeVpYUjFjbTRnVDJKcVpXTjBMbXRsZVhNb1FYWmhhV3hoWW14bFRXVjBjbWxqYzF0a1lYUmhWSGx3WlYwcE8xeHVJQ0I5WEc1Y2JpQWdMeW9xSUZKbGRIVnlibk1nYldWMGNtbGpJRzVoYldWeklHRjJZV2xzWVdKc1pTNWNiaUFnSUNvZ1FHMWxiV0psY205bUlFMWxZWE4xY21WeVhHNGdJQ0FxTDF4dUlDQnpkR0YwYVdNZ1oyVjBJR0YyWVdsc1lXSnNaVTFsWVhOMWNtVnpLQ2s2SUhOMGNtbHVaMXRkSUh0Y2JpQWdJQ0J5WlhSMWNtNGdUMkpxWldOMExtdGxlWE1vUVhaaGFXeGhZbXhsVFdWMGNtbGpjeWs3WEc0Z0lIMWNibjFjYmlKZGZRPT0iLCJpbXBvcnQgeyBEaXN0YW5jZUFnZ3JlZ2F0aW9uTWV0aG9kcyB9IGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0IGNsYXNzIERpc3RhbmNlTWF0cml4U2VydmljZSB7XG4gICAgX3dvcmtlcnM7XG4gICAgX3dvcmtlckNvdW50O1xuICAgIF90ZXJtaW5hdGVPbkNvbXBsZXRlO1xuICAgIGNvbnN0cnVjdG9yKHVzZUNvbmN1cnJlbnRXb3JrZXJzID0gdHJ1ZSwgdGVybWluYXRlT25Db21wbGV0ZSA9IHRydWUpIHtcbiAgICAgICAgY29uc3QgdGhyZWFkQ291bnQgPSBuYXZpZ2F0b3IuaGFyZHdhcmVDb25jdXJyZW5jeTtcbiAgICAgICAgdGhpcy5fd29ya2VyQ291bnQgPSB1c2VDb25jdXJyZW50V29ya2VycyA/IE1hdGgubWF4KHRocmVhZENvdW50IC0gMiwgMSkgOiAxO1xuICAgICAgICB0aGlzLl93b3JrZXJzID0gbmV3IEFycmF5KHRoaXMuX3dvcmtlckNvdW50KS5maWxsKG51bGwpXG4gICAgICAgICAgICAubWFwKCgpID0+IG5ldyBXb3JrZXIobmV3IFVSTCgnLi9kaXN0YW5jZS1tYXRyaXgtd29ya2VyJywgaW1wb3J0Lm1ldGEudXJsKSkpO1xuICAgICAgICB0aGlzLl90ZXJtaW5hdGVPbkNvbXBsZXRlID0gdGVybWluYXRlT25Db21wbGV0ZTtcbiAgICB9XG4gICAgO1xuICAgIGFzeW5jIGNhbGModmFsdWVzLCBmbk5hbWUsIG5vcm1hbGl6ZSA9IHRydWUsIG9wdHMpIHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY2FsY011bHRpKFt2YWx1ZXNdLCBbZm5OYW1lXSwgbm9ybWFsaXplLCBbb3B0cyA/PyB7fV0sIFsxXSwgRGlzdGFuY2VBZ2dyZWdhdGlvbk1ldGhvZHMuTUFOSEFUVEFOKTtcbiAgICB9XG4gICAgYXN5bmMgY2FsY011bHRpKHZhbHVlcywgZm5OYW1lcywgbm9ybWFsaXplID0gdHJ1ZSwgb3B0cyA9IFt7fV0sIHdlaWdodHMgPSBbMV0sIGFnZ3JlZ2F0aW9uTWV0aG9kID0gRGlzdGFuY2VBZ2dyZWdhdGlvbk1ldGhvZHMuTUFOSEFUVEFOKSB7XG4gICAgICAgIGlmICh2YWx1ZXMubGVuZ3RoIDwgMSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigndmFsdWVzIG11c3QgY29udGFpbiBhdCBsZWFzdCBvbmUgYXJyYXknKTtcbiAgICAgICAgaWYgKGZuTmFtZXMubGVuZ3RoICE9PSB2YWx1ZXMubGVuZ3RoIHx8IG9wdHMubGVuZ3RoICE9PSB2YWx1ZXMubGVuZ3RoIHx8IHdlaWdodHMubGVuZ3RoICE9PSB2YWx1ZXMubGVuZ3RoKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd2YWx1ZXMsIGZuTmFtZXMsIHdlaWdodHMgYW5kIG9wdHMgbXVzdCBoYXZlIHRoZSBzYW1lIGxlbmd0aCcpO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBjb25zdCBsZW4gPSB2YWx1ZXNbMF0ubGVuZ3RoO1xuICAgICAgICAgICAgICAgIGNvbnN0IHByb21pc2VzID0gbmV3IEFycmF5KHRoaXMuX3dvcmtlckNvdW50KTtcbiAgICAgICAgICAgICAgICBjb25zdCB0b3RhbExlbmd0aCA9IGxlbiAqIChsZW4gLSAxKSAvIDI7IC8vIHNpemUgb2YgcmVkdWNlZCBkaXN0YW5jZSBtYXRyaXhcbiAgICAgICAgICAgICAgICB0aGlzLl93b3JrZXJDb3VudCA9IE1hdGgubWluKHRoaXMuX3dvcmtlckNvdW50LCB0b3RhbExlbmd0aCk7XG4gICAgICAgICAgICAgICAgY29uc3QgY2h1bmtTaXplID0gdG90YWxMZW5ndGggLyB0aGlzLl93b3JrZXJDb3VudDtcbiAgICAgICAgICAgICAgICBjb25zdCBkaXN0YW5jZU1hdHJpeCA9IG5ldyBGbG9hdDMyQXJyYXkodG90YWxMZW5ndGgpO1xuICAgICAgICAgICAgICAgIGxldCBlbmRSb3cgPSAwO1xuICAgICAgICAgICAgICAgIGxldCBlbmRDb2wgPSAxO1xuICAgICAgICAgICAgICAgIC8vIG1pbm1heCBmb3Igbm9ybWFsaXphdGlvblxuICAgICAgICAgICAgICAgIGxldCBsbWluID0gMDtcbiAgICAgICAgICAgICAgICBsZXQgbG1heCA9IE51bWJlci5NSU5fVkFMVUU7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLl93b3JrZXJDb3VudDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0ID0gTWF0aC5mbG9vcihpICogY2h1bmtTaXplKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZW5kID0gKGkgPT09IHRoaXMuX3dvcmtlckNvdW50IC0gMSkgPyB0b3RhbExlbmd0aCA6IE1hdGguZmxvb3IoKGkgKyAxKSAqIGNodW5rU2l6ZSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0Um93ID0gZW5kUm93O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGFydENvbCA9IGVuZENvbDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgIT09IHRoaXMuX3dvcmtlckNvdW50IC0gMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gVGhlc2UgZm9ybXVsYXMgbWFwIHRoZSBsaW5lYXIgaW5kZXggdG8gdGhlIHVwcGVyIHRyaWFuZ3VsYXIgbWF0cml4IGluZGljZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGVuZFJvdyA9IGxlbiAtIDIgLSBNYXRoLmZsb29yKE1hdGguc3FydCgtOCAqIGVuZCArIDQgKiBsZW4gKiAobGVuIC0gMSkgLSA3KSAvIDIgLSAwLjUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZW5kQ29sID0gZW5kIC0gbGVuICogZW5kUm93ICsgTWF0aC5mbG9vcigoZW5kUm93ICsgMSkgKiAoZW5kUm93ICsgMikgLyAyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLl93b3JrZXJzW2ldLnBvc3RNZXNzYWdlKHsgdmFsdWVzLCBmbk5hbWVzLCBzdGFydFJvdywgc3RhcnRDb2wsIGNodW5ja1NpemU6IGVuZCAtIHN0YXJ0LCBvcHRzLCB3ZWlnaHRzLCBhZ2dyZWdhdGlvbk1ldGhvZCB9KTtcbiAgICAgICAgICAgICAgICAgICAgcHJvbWlzZXNbaV0gPSBuZXcgUHJvbWlzZSgocmVzb2x2ZVdvcmtlciwgcmVqZWN0V29ya2VyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl93b3JrZXJzW2ldLm9ubWVzc2FnZSA9ICh7IGRhdGE6IHsgZXJyb3IsIGRpc3RhbmNlTWF0cml4RGF0YSwgbWluLCBtYXggfSB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGVybWluYXRlT25Db21wbGV0ZSAmJiBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX3dvcmtlcnNbaV0udGVybWluYXRlKCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWplY3RXb3JrZXIoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGFuY2VNYXRyaXguc2V0KGRpc3RhbmNlTWF0cml4RGF0YSwgc3RhcnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobWluIDwgbG1pbilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxtaW4gPSBtaW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtYXggPiBsbWF4KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG1heCA9IG1heDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZVdvcmtlcigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcyk7XG4gICAgICAgICAgICAgICAgaWYgKG5vcm1hbGl6ZSlcbiAgICAgICAgICAgICAgICAgICAgZGlzdGFuY2VNYXRyaXguZm9yRWFjaCgodmFsdWUsIGluZGV4KSA9PiB7IGRpc3RhbmNlTWF0cml4W2luZGV4XSA9ICh2YWx1ZSAtIGxtaW4pIC8gKGxtYXggLSBsbWluKTsgfSk7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZShkaXN0YW5jZU1hdHJpeCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHRlcm1pbmF0ZSgpIHtcbiAgICAgICAgdGhpcy5fd29ya2Vycy5mb3JFYWNoKCh3b3JrZXIpID0+IHdvcmtlci50ZXJtaW5hdGUoKSk7XG4gICAgfVxufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pWkdsemRHRnVZMlV0YldGMGNtbDRMWE5sY25acFkyVXVhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKa2FYTjBZVzVqWlMxdFlYUnlhWGd0YzJWeWRtbGpaUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGRFFTeFBRVUZQTEVWQlFUUkNMREJDUVVFd1FpeEZRVUZETEUxQlFVMHNVMEZCVXl4RFFVRkRPMEZCUlRsRkxFMUJRVTBzVDBGQlR5eHhRa0ZCY1VJN1NVRkRkRUlzVVVGQlVTeERRVUZYTzBsQlEyNUNMRmxCUVZrc1EwRkJVenRKUVVOeVFpeHZRa0ZCYjBJc1EwRkJWVHRKUVVOMFF5eFpRVUZ0UWl4dlFrRkJiMElzUjBGQlJ5eEpRVUZKTEVWQlFVVXNiVUpCUVcxQ0xFZEJRVWNzU1VGQlNUdFJRVU40UlN4TlFVRk5MRmRCUVZjc1IwRkJSeXhUUVVGVExFTkJRVU1zYlVKQlFXMUNMRU5CUVVNN1VVRkRiRVFzU1VGQlNTeERRVUZETEZsQlFWa3NSMEZCUnl4dlFrRkJiMElzUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhYUVVGWExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRE5VVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1IwRkJSeXhKUVVGSkxFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF6dGhRVU53UkN4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zU1VGQlNTeE5RVUZOTEVOQlFVTXNTVUZCU1N4SFFVRkhMRU5CUVVNc01FSkJRVEJDTEVWQlFVVXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZETDBVc1NVRkJTU3hEUVVGRExHOUNRVUZ2UWl4SFFVRkhMRzFDUVVGdFFpeERRVUZETzBsQlEyeEVMRU5CUVVNN1NVRkJRU3hEUVVGRE8wbEJSVXNzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRnJRaXhGUVVGRkxFMUJRVzlDTEVWQlEzaEVMRk5CUVZNc1IwRkJSeXhKUVVGSkxFVkJRVVVzU1VGQmVVSTdVVUZETTBNc1QwRkJUeXhOUVVGTkxFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eEZRVUZGTEZOQlFWTXNSVUZEZGtRc1EwRkJReXhKUVVGSkxFbEJRVWtzUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3d3UWtGQk1FSXNRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJRenRKUVVNM1JDeERRVUZETzBsQlJVMHNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkRjRUlzVFVGQmIwSXNSVUZCUlN4UFFVRjFRaXhGUVVNM1F5eFRRVUZUTEVkQlFVY3NTVUZCU1N4RlFVRkZMRTlCUVRaQ0xFTkJRVU1zUlVGQlJTeERRVUZETEVWQlEyNUVMRlZCUVc5Q0xFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNiMEpCUVN0RExEQkNRVUV3UWl4RFFVRkRMRk5CUVZNN1VVRkZOVWNzU1VGQlNTeE5RVUZOTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNN1dVRkRia0lzVFVGQlRTeEpRVUZKTEV0QlFVc3NRMEZCUXl4M1EwRkJkME1zUTBGQlF5eERRVUZETzFGQlF6VkVMRWxCUVVrc1QwRkJUeXhEUVVGRExFMUJRVTBzUzBGQlN5eE5RVUZOTEVOQlFVTXNUVUZCVFN4SlFVRkpMRWxCUVVrc1EwRkJReXhOUVVGTkxFdEJRVXNzVFVGQlRTeERRVUZETEUxQlFVMHNTVUZCU1N4UFFVRlBMRU5CUVVNc1RVRkJUU3hMUVVGTExFMUJRVTBzUTBGQlF5eE5RVUZOTzFsQlEzWkhMRTFCUVUwc1NVRkJTU3hMUVVGTExFTkJRVU1zTmtSQlFUWkVMRU5CUVVNc1EwRkJRenRSUVVOcVJpeFBRVUZQTEVsQlFVa3NUMEZCVHl4RFFVRkRMRXRCUVVzc1JVRkJSU3hQUVVGUExFVkJRVVVzVFVGQlRTeEZRVUZGTEVWQlFVVTdXVUZETTBNc1NVRkJTVHRuUWtGRFJpeE5RVUZOTEVkQlFVY3NSMEZCUnl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETzJkQ1FVTTNRaXhOUVVGTkxGRkJRVkVzUjBGQlJ5eEpRVUZKTEV0QlFVc3NRMEZCWjBJc1NVRkJTU3hEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzJkQ1FVTTNSQ3hOUVVGTkxGZEJRVmNzUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNhME5CUVd0RE8yZENRVU16UlN4SlFVRkpMRU5CUVVNc1dVRkJXU3hIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRmxCUVZrc1JVRkJSU3hYUVVGWExFTkJRVU1zUTBGQlF6dG5Ra0ZETjBRc1RVRkJUU3hUUVVGVExFZEJRVWNzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXl4WlFVRlpMRU5CUVVNN1owSkJRMnhFTEUxQlFVMHNZMEZCWXl4SFFVRkhMRWxCUVVrc1dVRkJXU3hEUVVGRExGZEJRVmNzUTBGQlF5eERRVUZETzJkQ1FVTnlSQ3hKUVVGSkxFMUJRVTBzUjBGQlJ5eERRVUZETEVOQlFVTTdaMEpCUTJZc1NVRkJTU3hOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETzJkQ1FVTm1MREpDUVVFeVFqdG5Ra0ZETTBJc1NVRkJTU3hKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETzJkQ1FVTmlMRWxCUVVrc1NVRkJTU3hIUVVGSExFMUJRVTBzUTBGQlF5eFRRVUZUTEVOQlFVTTdaMEpCUXpWQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zV1VGQldTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMjlDUVVNeFF5eE5RVUZOTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUjBGQlJ5eFRRVUZUTEVOQlFVTXNRMEZCUXp0dlFrRkRlRU1zVFVGQlRTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRXRCUVVzc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1YwRkJWeXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEZOQlFWTXNRMEZCUXl4RFFVRkRPMjlDUVVNeFJpeE5RVUZOTEZGQlFWRXNSMEZCUnl4TlFVRk5MRU5CUVVNN2IwSkJRM2hDTEUxQlFVMHNVVUZCVVN4SFFVRkhMRTFCUVUwc1EwRkJRenR2UWtGRGVFSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eERRVUZETEVWQlFVVTdkMEpCUXk5Q0xEWkZRVUUyUlR0M1FrRkROMFVzVFVGQlRTeEhRVUZITEVkQlFVY3NSMEZCUnl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUjBGQlJ5eERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU1zUTBGQlF6dDNRa0ZEZGtZc1RVRkJUU3hIUVVGSExFZEJRVWNzUjBGQlJ5eEhRVUZITEVkQlFVY3NUVUZCVFN4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN2NVSkJRek5GTzI5Q1FVTkVMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNWMEZCVnl4RFFVTXhRaXhGUVVGRExFMUJRVTBzUlVGQlJTeFBRVUZQTEVWQlFVVXNVVUZCVVN4RlFVRkZMRkZCUVZFc1JVRkJSU3hWUVVGVkxFVkJRVVVzUjBGQlJ5eEhRVUZITEV0QlFVc3NSVUZCUlN4SlFVRkpMRVZCUVVVc1QwRkJUeXhGUVVGRkxHbENRVUZwUWl4RlFVRkRMRU5CUTJwSExFTkJRVU03YjBKQlEwWXNVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNZVUZCWVN4RlFVRkZMRmxCUVZrc1JVRkJSU3hGUVVGRk8zZENRVU40UkN4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEZOQlFWTXNSMEZCUnl4RFFVRkRMRVZCUVVNc1NVRkJTU3hGUVVGRkxFVkJRVU1zUzBGQlN5eEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxFZEJRVWNzUlVGQlJTeEhRVUZITEVWQlFVTXNSVUZCUXl4RlFVRlJMRVZCUVVVN05FSkJRMjVHTEVsQlFVa3NRMEZCUXl4dlFrRkJiMElzU1VGQlNTeFZRVUZWTEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4VFFVRlRMRVZCUVVVc1EwRkJReXhEUVVGRE96UkNRVU0xUlN4SlFVRkpMRXRCUVVzc1JVRkJSVHRuUTBGRFZDeFpRVUZaTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN05rSkJRM0pDTzJsRFFVRk5PMmREUVVOTUxHTkJRV01zUTBGQlF5eEhRVUZITEVOQlFVTXNhMEpCUVd0Q0xFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTTdaME5CUXpsRExFbEJRVWtzUjBGQlJ5eEhRVUZITEVsQlFVazdiME5CUTFvc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF6dG5RMEZEWWl4SlFVRkpMRWRCUVVjc1IwRkJSeXhKUVVGSk8yOURRVU5hTEVsQlFVa3NSMEZCUnl4SFFVRkhMRU5CUVVNN1owTkJRMklzWVVGQllTeEZRVUZGTEVOQlFVTTdOa0pCUTJwQ08zZENRVU5JTEVOQlFVTXNRMEZCUXp0dlFrRkRTaXhEUVVGRExFTkJRVU1zUTBGQlF6dHBRa0ZEU2p0blFrRkRSQ3hOUVVGTkxFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNN1owSkJRelZDTEVsQlFVa3NVMEZCVXp0dlFrRkRXQ3hqUVVGakxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNTMEZCU3l4RlFVRkZMRXRCUVVzc1JVRkJSU3hGUVVGRkxFZEJRVWNzWTBGQll5eERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1MwRkJTeXhIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNTVUZCU1N4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdaMEpCUTNoSExFOUJRVThzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZCUXp0aFFVTjZRanRaUVVGRExFOUJRVThzUTBGQlF5eEZRVUZGTzJkQ1FVTldMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dGhRVU5ZTzFGQlEwZ3NRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRUQ3hEUVVGRE8wbEJSVTBzVTBGQlV6dFJRVU5rTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zVFVGQlRTeEZRVUZGTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU40UkN4RFFVRkRPME5CUTBvaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2UwdHViM2R1VFdWMGNtbGpjMzBnWm5KdmJTQW5MaTR2ZEhsd1pXUXRiV1YwY21samN5YzdYRzVwYlhCdmNuUWdlMFJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUXNJRVJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUnpmU0JtY205dElDY3VMM1I1Y0dWekp6dGNibHh1Wlhod2IzSjBJR05zWVhOeklFUnBjM1JoYm1ObFRXRjBjbWw0VTJWeWRtbGpaU0I3WEc0Z0lDQWdjSEpwZG1GMFpTQmZkMjl5YTJWeWN6b2dWMjl5YTJWeVcxMDdYRzRnSUNBZ2NISnBkbUYwWlNCZmQyOXlhMlZ5UTI5MWJuUTZJRzUxYldKbGNqdGNiaUFnSUNCd2NtbDJZWFJsSUY5MFpYSnRhVzVoZEdWUGJrTnZiWEJzWlhSbE9pQmliMjlzWldGdU8xeHVJQ0FnSUhCMVlteHBZeUJqYjI1emRISjFZM1J2Y2loMWMyVkRiMjVqZFhKeVpXNTBWMjl5YTJWeWN5QTlJSFJ5ZFdVc0lIUmxjbTFwYm1GMFpVOXVRMjl0Y0d4bGRHVWdQU0IwY25WbEtTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCMGFISmxZV1JEYjNWdWRDQTlJRzVoZG1sbllYUnZjaTVvWVhKa2QyRnlaVU52Ym1OMWNuSmxibU41TzF4dUlDQWdJQ0FnZEdocGN5NWZkMjl5YTJWeVEyOTFiblFnUFNCMWMyVkRiMjVqZFhKeVpXNTBWMjl5YTJWeWN5QS9JRTFoZEdndWJXRjRLSFJvY21WaFpFTnZkVzUwSUMwZ01pd2dNU2tnT2lBeE8xeHVJQ0FnSUNBZ2RHaHBjeTVmZDI5eWEyVnljeUE5SUc1bGR5QkJjbkpoZVNoMGFHbHpMbDkzYjNKclpYSkRiM1Z1ZENrdVptbHNiQ2h1ZFd4c0tWeHVJQ0FnSUNBZ0lDQXViV0Z3S0NncElEMCtJRzVsZHlCWGIzSnJaWElvYm1WM0lGVlNUQ2duTGk5a2FYTjBZVzVqWlMxdFlYUnlhWGd0ZDI5eWEyVnlKeXdnYVcxd2IzSjBMbTFsZEdFdWRYSnNLU2twTzF4dUlDQWdJQ0FnZEdocGN5NWZkR1Z5YldsdVlYUmxUMjVEYjIxd2JHVjBaU0E5SUhSbGNtMXBibUYwWlU5dVEyOXRjR3hsZEdVN1hHNGdJQ0FnZlR0Y2JseHVJQ0FnSUhCMVlteHBZeUJoYzNsdVl5QmpZV3hqS0haaGJIVmxjem9nUVhKeVlYazhZVzU1UGl3Z1ptNU9ZVzFsT2lCTGJtOTNiazFsZEhKcFkzTXNYRzRnSUNBZ0lDQnViM0p0WVd4cGVtVWdQU0IwY25WbExDQnZjSFJ6UHpvZ2UxdGZPaUJ6ZEhKcGJtZGRPaUJoYm5sOUtUb2dVSEp2YldselpUeEdiRzloZERNeVFYSnlZWGsrSUh0Y2JpQWdJQ0FnSUhKbGRIVnliaUJoZDJGcGRDQjBhR2x6TG1OaGJHTk5kV3gwYVNoYmRtRnNkV1Z6WFN3Z1cyWnVUbUZ0WlYwc0lHNXZjbTFoYkdsNlpTeGNiaUFnSUNBZ0lDQWdXMjl3ZEhNZ1B6OGdlMzFkTENCYk1WMHNJRVJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUnpMazFCVGtoQlZGUkJUaWs3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdjSFZpYkdsaklHRnplVzVqSUdOaGJHTk5kV3gwYVNoY2JpQWdJQ0FnSUhaaGJIVmxjem9nUVhKeVlYazhZVzU1UGx0ZExDQm1iazVoYldWek9pQkxibTkzYmsxbGRISnBZM05iWFN4Y2JpQWdJQ0FnSUc1dmNtMWhiR2w2WlNBOUlIUnlkV1VzSUc5d2RITTZJSHRiWHpvZ2MzUnlhVzVuWFRvZ1lXNTVmVnRkSUQwZ1czdDlYU3hjYmlBZ0lDQWdJSGRsYVdkb2RITTZJRzUxYldKbGNsdGRJRDBnV3pGZExDQmhaMmR5WldkaGRHbHZiazFsZEdodlpEb2dSR2x6ZEdGdVkyVkJaMmR5WldkaGRHbHZiazFsZEdodlpDQTlJRVJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUnpMazFCVGtoQlZGUkJUbHh1SUNBZ0lDazZJRkJ5YjIxcGMyVThSbXh2WVhRek1rRnljbUY1UGlCN1hHNGdJQ0FnSUNCcFppQW9kbUZzZFdWekxteGxibWQwYUNBOElERXBYRzRnSUNBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpZ25kbUZzZFdWeklHMTFjM1FnWTI5dWRHRnBiaUJoZENCc1pXRnpkQ0J2Ym1VZ1lYSnlZWGtuS1R0Y2JpQWdJQ0FnSUdsbUlDaG1iazVoYldWekxteGxibWQwYUNBaFBUMGdkbUZzZFdWekxteGxibWQwYUNCOGZDQnZjSFJ6TG14bGJtZDBhQ0FoUFQwZ2RtRnNkV1Z6TG14bGJtZDBhQ0I4ZkNCM1pXbG5hSFJ6TG14bGJtZDBhQ0FoUFQwZ2RtRnNkV1Z6TG14bGJtZDBhQ2xjYmlBZ0lDQWdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLQ2QyWVd4MVpYTXNJR1p1VG1GdFpYTXNJSGRsYVdkb2RITWdZVzVrSUc5d2RITWdiWFZ6ZENCb1lYWmxJSFJvWlNCellXMWxJR3hsYm1kMGFDY3BPMXh1SUNBZ0lDQWdjbVYwZFhKdUlHNWxkeUJRY205dGFYTmxLR0Z6ZVc1aklDaHlaWE52YkhabExDQnlaV3BsWTNRcElEMCtJSHRjYmlBZ0lDQWdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQnNaVzRnUFNCMllXeDFaWE5iTUYwdWJHVnVaM1JvTzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUhCeWIyMXBjMlZ6SUQwZ2JtVjNJRUZ5Y21GNVBGQnliMjFwYzJVOGRtOXBaRDQrS0hSb2FYTXVYM2R2Y210bGNrTnZkVzUwS1R0Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCMGIzUmhiRXhsYm1kMGFDQTlJR3hsYmlBcUlDaHNaVzRnTFNBeEtTQXZJREk3SUM4dklITnBlbVVnYjJZZ2NtVmtkV05sWkNCa2FYTjBZVzVqWlNCdFlYUnlhWGhjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMbDkzYjNKclpYSkRiM1Z1ZENBOUlFMWhkR2d1YldsdUtIUm9hWE11WDNkdmNtdGxja052ZFc1MExDQjBiM1JoYkV4bGJtZDBhQ2s3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWTJoMWJtdFRhWHBsSUQwZ2RHOTBZV3hNWlc1bmRHZ2dMeUIwYUdsekxsOTNiM0pyWlhKRGIzVnVkRHRjYmlBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JrYVhOMFlXNWpaVTFoZEhKcGVDQTlJRzVsZHlCR2JHOWhkRE15UVhKeVlYa29kRzkwWVd4TVpXNW5kR2dwTzF4dUlDQWdJQ0FnSUNBZ0lHeGxkQ0JsYm1SU2IzY2dQU0F3TzF4dUlDQWdJQ0FnSUNBZ0lHeGxkQ0JsYm1SRGIyd2dQU0F4TzF4dUlDQWdJQ0FnSUNBZ0lDOHZJRzFwYm0xaGVDQm1iM0lnYm05eWJXRnNhWHBoZEdsdmJseHVJQ0FnSUNBZ0lDQWdJR3hsZENCc2JXbHVJRDBnTUR0Y2JpQWdJQ0FnSUNBZ0lDQnNaWFFnYkcxaGVDQTlJRTUxYldKbGNpNU5TVTVmVmtGTVZVVTdYRzRnSUNBZ0lDQWdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCMGFHbHpMbDkzYjNKclpYSkRiM1Z1ZERzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCemRHRnlkQ0E5SUUxaGRHZ3VabXh2YjNJb2FTQXFJR05vZFc1clUybDZaU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCbGJtUWdQU0FvYVNBOVBUMGdkR2hwY3k1ZmQyOXlhMlZ5UTI5MWJuUWdMU0F4S1NBL0lIUnZkR0ZzVEdWdVozUm9JRG9nVFdGMGFDNW1iRzl2Y2lnb2FTQXJJREVwSUNvZ1kyaDFibXRUYVhwbEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJSE4wWVhKMFVtOTNJRDBnWlc1a1VtOTNPMXh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjM1FnYzNSaGNuUkRiMndnUFNCbGJtUkRiMnc3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYVNBaFBUMGdkR2hwY3k1ZmQyOXlhMlZ5UTI5MWJuUWdMU0F4S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUM4dklGUm9aWE5sSUdadmNtMTFiR0Z6SUcxaGNDQjBhR1VnYkdsdVpXRnlJR2x1WkdWNElIUnZJSFJvWlNCMWNIQmxjaUIwY21saGJtZDFiR0Z5SUcxaGRISnBlQ0JwYm1ScFkyVnpYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHVnVaRkp2ZHlBOUlHeGxiaUF0SURJZ0xTQk5ZWFJvTG1ac2IyOXlLRTFoZEdndWMzRnlkQ2d0T0NBcUlHVnVaQ0FySURRZ0tpQnNaVzRnS2lBb2JHVnVJQzBnTVNrZ0xTQTNLU0F2SURJZ0xTQXdMalVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0JsYm1SRGIyd2dQU0JsYm1RZ0xTQnNaVzRnS2lCbGJtUlNiM2NnS3lCTllYUm9MbVpzYjI5eUtDaGxibVJTYjNjZ0t5QXhLU0FxSUNobGJtUlNiM2NnS3lBeUtTQXZJRElwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0FnSUNBZ2RHaHBjeTVmZDI5eWEyVnljMXRwWFM1d2IzTjBUV1Z6YzJGblpTaGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2UzWmhiSFZsY3l3Z1ptNU9ZVzFsY3l3Z2MzUmhjblJTYjNjc0lITjBZWEowUTI5c0xDQmphSFZ1WTJ0VGFYcGxPaUJsYm1RZ0xTQnpkR0Z5ZEN3Z2IzQjBjeXdnZDJWcFoyaDBjeXdnWVdkbmNtVm5ZWFJwYjI1TlpYUm9iMlI5WEc0Z0lDQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2NISnZiV2x6WlhOYmFWMGdQU0J1WlhjZ1VISnZiV2x6WlNnb2NtVnpiMngyWlZkdmNtdGxjaXdnY21WcVpXTjBWMjl5YTJWeUtTQTlQaUI3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSFJvYVhNdVgzZHZjbXRsY25OYmFWMHViMjV0WlhOellXZGxJRDBnS0h0a1lYUmhPaUI3WlhKeWIzSXNJR1JwYzNSaGJtTmxUV0YwY21sNFJHRjBZU3dnYldsdUxDQnRZWGg5ZlNrNklIWnZhV1FnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUm9hWE11WDNSbGNtMXBibUYwWlU5dVEyOXRjR3hsZEdVZ0ppWWdjMlYwVkdsdFpXOTFkQ2dvS1NBOVBpQjBhR2x6TGw5M2IzSnJaWEp6VzJsZExuUmxjbTFwYm1GMFpTZ3BLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JwWmlBb1pYSnliM0lwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxhbVZqZEZkdmNtdGxjaWhsY25KdmNpazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1JwYzNSaGJtTmxUV0YwY21sNExuTmxkQ2hrYVhOMFlXNWpaVTFoZEhKcGVFUmhkR0VzSUhOMFlYSjBLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsbUlDaHRhVzRnUENCc2JXbHVLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc2JXbHVJRDBnYldsdU8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0cxaGVDQStJR3h0WVhncFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR3h0WVhnZ1BTQnRZWGc3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpYTnZiSFpsVjI5eWEyVnlLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0I5TzF4dUlDQWdJQ0FnSUNBZ0lDQWdmU2s3WEc0Z0lDQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ0lDQWdJR0YzWVdsMElGQnliMjFwYzJVdVlXeHNLSEJ5YjIxcGMyVnpLVHRjYmlBZ0lDQWdJQ0FnSUNCcFppQW9ibTl5YldGc2FYcGxLVnh1SUNBZ0lDQWdJQ0FnSUNBZ1pHbHpkR0Z1WTJWTllYUnlhWGd1Wm05eVJXRmphQ2dvZG1Gc2RXVXNJR2x1WkdWNEtTQTlQaUI3SUdScGMzUmhibU5sVFdGMGNtbDRXMmx1WkdWNFhTQTlJQ2gyWVd4MVpTQXRJR3h0YVc0cElDOGdLR3h0WVhnZ0xTQnNiV2x1S1RzZ2ZTazdYRzRnSUNBZ0lDQWdJQ0FnY21WemIyeDJaU2hrYVhOMFlXNWpaVTFoZEhKcGVDazdYRzRnSUNBZ0lDQWdJSDBnWTJGMFkyZ2dLR1VwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaV3BsWTNRb1pTazdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJSDFjYmx4dUlDQWdJSEIxWW14cFl5QjBaWEp0YVc1aGRHVW9LVG9nZG05cFpDQjdYRzRnSUNBZ0lDQjBhR2x6TGw5M2IzSnJaWEp6TG1admNrVmhZMmdvS0hkdmNtdGxjaWtnUFQ0Z2QyOXlhMlZ5TG5SbGNtMXBibUYwWlNncEtUdGNiaUFnSUNCOVhHNTlYRzRpWFgwPSIsIi8qKlxuICogQGxpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgMjAxOSBHb29nbGUgTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICovXG4vKipcbiAqIFNpbXBsZSByYW5kb20gaW50ZWdlciBmdW5jdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gdGF1UmFuZEludChuLCByYW5kb20pIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcihyYW5kb20oKSAqIG4pO1xufVxuLyoqXG4gKiBTaW1wbGUgcmFuZG9tIGZsb2F0IGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0YXVSYW5kKHJhbmRvbSkge1xuICAgIHJldHVybiByYW5kb20oKTtcbn1cbi8qKlxuICogQ29tcHV0ZSB0aGUgKHN0YW5kYXJkIGwyKSBub3JtIG9mIGEgdmVjdG9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybSh2ZWMpIHtcbiAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdmVjKVxuICAgICAgICByZXN1bHQgKz0gaXRlbSAqKiAyO1xuICAgIHJldHVybiBNYXRoLnNxcnQocmVzdWx0KTtcbn1cbi8qKlxuICogQ3JlYXRlcyBhbiBlbXB0eSBhcnJheSAoZmlsbGVkIHdpdGggdW5kZWZpbmVkKVxuICovXG5leHBvcnQgZnVuY3Rpb24gZW1wdHkobikge1xuICAgIGNvbnN0IG91dHB1dCA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbjsgaSsrKVxuICAgICAgICBvdXRwdXQucHVzaCh1bmRlZmluZWQpO1xuICAgIHJldHVybiBvdXRwdXQ7XG59XG4vKipcbiAqIENyZWF0ZXMgYW4gYXJyYXkgZmlsbGVkIHdpdGggaW5kZXggdmFsdWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByYW5nZShuKSB7XG4gICAgcmV0dXJuIGVtcHR5KG4pLm1hcCgoXywgaSkgPT4gaSk7XG59XG4vKipcbiAqIENyZWF0ZXMgYW4gYXJyYXkgZmlsbGVkIHdpdGggYSBzcGVjaWZpYyB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZmlsbGVkKG4sIHYpIHtcbiAgICByZXR1cm4gZW1wdHkobikubWFwKCgpID0+IHYpO1xufVxuLyoqXG4gKiBDcmVhdGVzIGFuIGFycmF5IGZpbGxlZCB3aXRoIHplcm9zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB6ZXJvcyhuKSB7XG4gICAgcmV0dXJuIGZpbGxlZChuLCAwKTtcbn1cbi8qKlxuICogQ3JlYXRlcyBhbiBhcnJheSBmaWxsZWQgd2l0aCBvbmVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvbmVzKG4pIHtcbiAgICByZXR1cm4gZmlsbGVkKG4sIDEpO1xufVxuLyoqXG4gKiBDcmVhdGVzIGFuIGFycmF5IGZyb20gYSB0byBiLCBvZiBsZW5ndGggbGVuLCBpbmNsdXNpdmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxpbmVhcihhLCBiLCBsZW4pIHtcbiAgICByZXR1cm4gZW1wdHkobGVuKS5tYXAoKF8sIGkpID0+IHtcbiAgICAgICAgcmV0dXJuIGEgKyBpICogKChiIC0gYSkgLyAobGVuIC0gMSkpO1xuICAgIH0pO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBzdW0gb2YgYW4gYXJyYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN1bShpbnB1dCkge1xuICAgIHJldHVybiBpbnB1dC5yZWR1Y2UoKHN1bSwgdmFsKSA9PiBzdW0gKyB2YWwpO1xufVxuLyoqXG4gKiBSZXR1cm5zIHRoZSBtZWFuIG9mIGFuIGFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtZWFuKGlucHV0KSB7XG4gICAgcmV0dXJuIHN1bShpbnB1dCkgLyBpbnB1dC5sZW5ndGg7XG59XG4vKipcbiAqIFJldHVybnMgdGhlIG1heGltdW0gdmFsdWUgb2YgYW4gYXJyYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1heChpbnB1dCkge1xuICAgIGxldCBtYXggPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5wdXQubGVuZ3RoOyBpKyspXG4gICAgICAgIG1heCA9IGlucHV0W2ldID4gbWF4ID8gaW5wdXRbaV0gOiBtYXg7XG4gICAgcmV0dXJuIG1heDtcbn1cbi8qKlxuICogUmV0dXJucyB0aGUgbWF4aW11bSB2YWx1ZSBvZiBhIDJkIGFycmF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXgyZChpbnB1dCkge1xuICAgIGxldCBtYXggPSAwO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5wdXQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBpbnB1dFtpXS5sZW5ndGg7IGorKylcbiAgICAgICAgICAgIG1heCA9IGlucHV0W2ldW2pdID4gbWF4ID8gaW5wdXRbaV1bal0gOiBtYXg7XG4gICAgfVxuICAgIHJldHVybiBtYXg7XG59XG4vKipcbiAqIEdlbmVyYXRlIG5TYW1wbGVzIG1hbnkgaW50ZWdlcnMgZnJvbSAwIHRvIHBvb2xTaXplIHN1Y2ggdGhhdCBub1xuICogaW50ZWdlciBpcyBzZWxlY3RlZCB0d2ljZS4gVGhlIGR1cGxpY2F0aW9uIGNvbnN0cmFpbnQgaXMgYWNoaWV2ZWQgdmlhXG4gKiByZWplY3Rpb24gc2FtcGxpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWplY3Rpb25TYW1wbGUoblNhbXBsZXMsIHBvb2xTaXplLCByYW5kb20pIHtcbiAgICBjb25zdCByZXN1bHQgPSB6ZXJvcyhuU2FtcGxlcyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuU2FtcGxlczsgaSsrKSB7XG4gICAgICAgIGxldCByZWplY3RTYW1wbGUgPSB0cnVlO1xuICAgICAgICB3aGlsZSAocmVqZWN0U2FtcGxlKSB7XG4gICAgICAgICAgICBjb25zdCBqID0gdGF1UmFuZEludChwb29sU2l6ZSwgcmFuZG9tKTtcbiAgICAgICAgICAgIGxldCBicm9rZW4gPSBmYWxzZTtcbiAgICAgICAgICAgIGZvciAobGV0IGsgPSAwOyBrIDwgaTsgaysrKSB7XG4gICAgICAgICAgICAgICAgaWYgKGogPT09IHJlc3VsdFtrXSkge1xuICAgICAgICAgICAgICAgICAgICBicm9rZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWJyb2tlbilcbiAgICAgICAgICAgICAgICByZWplY3RTYW1wbGUgPSBmYWxzZTtcbiAgICAgICAgICAgIHJlc3VsdFtpXSA9IGo7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbi8qKlxuICogUmVzaGFwZXMgYSAxZCBhcnJheSBpbnRvIGEgMkQgb2YgZ2l2ZW4gZGltZW5zaW9ucy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc2hhcGUyZCh4LCBhLCBiKSB7XG4gICAgY29uc3Qgcm93cyA9IFtdO1xuICAgIC8vIGxldCBjb3VudCA9IDA7XG4gICAgbGV0IGluZGV4ID0gMDtcbiAgICBpZiAoeC5sZW5ndGggIT09IGEgKiBiKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FycmF5IGRpbWVuc2lvbnMgbXVzdCBtYXRjaCBpbnB1dCBsZW5ndGguJyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhOyBpKyspIHtcbiAgICAgICAgY29uc3QgY29sID0gW107XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgYjsgaisrKSB7XG4gICAgICAgICAgICBjb2wucHVzaCh4W2luZGV4XSk7XG4gICAgICAgICAgICBpbmRleCArPSAxO1xuICAgICAgICB9XG4gICAgICAgIHJvd3MucHVzaChjb2wpO1xuICAgICAgICAvLyBjb3VudCArPSAxO1xuICAgIH1cbiAgICByZXR1cm4gcm93cztcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRYUnBiSE11YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SjFkR2xzY3k1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRVHM3T3pzN096czdPenM3T3pzN096czdSMEZwUWtjN1FVRkpTRHM3UjBGRlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4VlFVRlZMRU5CUVVNc1EwRkJVeXhGUVVGRkxFMUJRV2RDTzBsQlEzQkVMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOc1F5eERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVDBGQlR5eERRVUZETEUxQlFXZENPMGxCUTNSRExFOUJRVThzVFVGQlRTeEZRVUZGTEVOQlFVTTdRVUZEYkVJc1EwRkJRenRCUVVORU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4VlFVRlZMRWxCUVVrc1EwRkJReXhIUVVGaE8wbEJRMmhETEVsQlFVa3NUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVObUxFdEJRVXNzVFVGQlRTeEpRVUZKTEVsQlFVa3NSMEZCUnp0UlFVTndRaXhOUVVGTkxFbEJRVWtzU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVVjBRaXhQUVVGUExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1FVRkRNMElzUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxFdEJRVXNzUTBGQlF5eERRVUZUTzBsQlF6ZENMRTFCUVUwc1RVRkJUU3hIUVVGblFpeEZRVUZGTEVOQlFVTTdTVUZETDBJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVU3VVVGRGVFSXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dEpRVVY2UWl4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzUzBGQlN5eERRVUZETEVOQlFWTTdTVUZETjBJc1QwRkJUeXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRia01zUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxFMUJRVTBzUTBGQlF5eERRVUZUTEVWQlFVVXNRMEZCVXp0SlFVTjZReXhQUVVGUExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETDBJc1EwRkJRenRCUVVWRU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4VlFVRlZMRXRCUVVzc1EwRkJReXhEUVVGVE8wbEJRemRDTEU5QlFVOHNUVUZCVFN4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4wUWl4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNTVUZCU1N4RFFVRkRMRU5CUVZNN1NVRkROVUlzVDBGQlR5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRM1JDTEVOQlFVTTdRVUZGUkRzN1IwRkZSenRCUVVOSUxFMUJRVTBzVlVGQlZTeE5RVUZOTEVOQlFVTXNRMEZCVXl4RlFVRkZMRU5CUVZNc1JVRkJSU3hIUVVGWE8wbEJRM1JFTEU5QlFVOHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRSUVVNM1FpeFBRVUZQTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzWkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRMHdzUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxFZEJRVWNzUTBGQlF5eExRVUZsTzBsQlEycERMRTlCUVU4c1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVkQlFVY3NSVUZCUlN4SFFVRkhMRVZCUVVVc1JVRkJSU3hEUVVGRExFZEJRVWNzUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0QlFVTXZReXhEUVVGRE8wRkJSVVE3TzBkQlJVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1NVRkJTU3hEUVVGRExFdEJRV1U3U1VGRGJFTXNUMEZCVHl4SFFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXp0QlFVTnVReXhEUVVGRE8wRkJSVVE3TzBkQlJVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1IwRkJSeXhEUVVGRExFdEJRV1U3U1VGRGFrTXNTVUZCU1N4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMW9zUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUTI1RExFZEJRVWNzUjBGQlJ5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF6dEpRVVY0UXl4UFFVRlBMRWRCUVVjc1EwRkJRenRCUVVOaUxFTkJRVU03UVVGRlJEczdSMEZGUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3hMUVVGTExFTkJRVU1zUzBGQmFVSTdTVUZEY2tNc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlExb3NTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3VVVGRGNrTXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTzFsQlEzUkRMRWRCUVVjc1IwRkJSeXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXp0TFFVTXZRenRKUVVORUxFOUJRVThzUjBGQlJ5eERRVUZETzBGQlEySXNRMEZCUXp0QlFVVkVPenM3TzBkQlNVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1pVRkJaU3hEUVVNM1FpeFJRVUZuUWl4RlFVTm9RaXhSUVVGblFpeEZRVU5vUWl4TlFVRm5RanRKUVVWb1FpeE5RVUZOTEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU03U1VGREwwSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEZGQlFWRXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRSUVVOcVF5eEpRVUZKTEZsQlFWa3NSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkRlRUlzVDBGQlR5eFpRVUZaTEVWQlFVVTdXVUZEYmtJc1RVRkJUU3hEUVVGRExFZEJRVWNzVlVGQlZTeERRVUZETEZGQlFWRXNSVUZCUlN4TlFVRk5MRU5CUVVNc1EwRkJRenRaUVVOMlF5eEpRVUZKTEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNN1dVRkRia0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkRNVUlzU1VGQlNTeERRVUZETEV0QlFVc3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRk8yOUNRVU51UWl4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRE8yOUNRVU5rTEUxQlFVMDdhVUpCUTFBN1lVRkRSanRaUVVORUxFbEJRVWtzUTBGQlF5eE5RVUZOTzJkQ1FVTlVMRmxCUVZrc1IwRkJSeXhMUVVGTExFTkJRVU03V1VGRmRrSXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFRRVU5tTzB0QlEwWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVTBGQlV5eERRVUZKTEVOQlFVMHNSVUZCUlN4RFFVRlRMRVZCUVVVc1EwRkJVenRKUVVOMlJDeE5RVUZOTEVsQlFVa3NSMEZCVlN4RlFVRkZMRU5CUVVNN1NVRkRka0lzYVVKQlFXbENPMGxCUTJwQ0xFbEJRVWtzUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVVmtMRWxCUVVrc1EwRkJReXhEUVVGRExFMUJRVTBzUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXp0UlFVTndRaXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETERKRFFVRXlReXhEUVVGRExFTkJRVU03U1VGSEwwUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRSUVVNeFFpeE5RVUZOTEVkQlFVY3NSMEZCVVN4RlFVRkZMRU5CUVVNN1VVRkRjRUlzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTXhRaXhIUVVGSExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRMjVDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRU5CUVVNN1UwRkRXanRSUVVORUxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRaaXhqUVVGak8wdEJRMlk3U1VGRFJDeFBRVUZQTEVsQlFVa3NRMEZCUXp0QlFVTmtMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SXZLaXBjYmlBcUlFQnNhV05sYm5ObFhHNGdLbHh1SUNvZ1EyOXdlWEpwWjJoMElESXdNVGtnUjI5dloyeGxJRXhNUXk0Z1FXeHNJRkpwWjJoMGN5QlNaWE5sY25abFpDNWNiaUFxWEc0Z0tpQk1hV05sYm5ObFpDQjFibVJsY2lCMGFHVWdRWEJoWTJobElFeHBZMlZ1YzJVc0lGWmxjbk5wYjI0Z01pNHdJQ2gwYUdVZ1hDSk1hV05sYm5ObFhDSXBPMXh1SUNvZ2VXOTFJRzFoZVNCdWIzUWdkWE5sSUhSb2FYTWdabWxzWlNCbGVHTmxjSFFnYVc0Z1kyOXRjR3hwWVc1alpTQjNhWFJvSUhSb1pTQk1hV05sYm5ObExseHVJQ29nV1c5MUlHMWhlU0J2WW5SaGFXNGdZU0JqYjNCNUlHOW1JSFJvWlNCTWFXTmxibk5sSUdGMFhHNGdLbHh1SUNvZ0lDQWdJR2gwZEhBNkx5OTNkM2N1WVhCaFkyaGxMbTl5Wnk5c2FXTmxibk5sY3k5TVNVTkZUbE5GTFRJdU1GeHVJQ3BjYmlBcUlGVnViR1Z6Y3lCeVpYRjFhWEpsWkNCaWVTQmhjSEJzYVdOaFlteGxJR3hoZHlCdmNpQmhaM0psWldRZ2RHOGdhVzRnZDNKcGRHbHVaeXdnYzI5bWRIZGhjbVZjYmlBcUlHUnBjM1J5YVdKMWRHVmtJSFZ1WkdWeUlIUm9aU0JNYVdObGJuTmxJR2x6SUdScGMzUnlhV0oxZEdWa0lHOXVJR0Z1SUZ3aVFWTWdTVk5jSWlCQ1FWTkpVeXhjYmlBcUlGZEpWRWhQVlZRZ1YwRlNVa0ZPVkVsRlV5QlBVaUJEVDA1RVNWUkpUMDVUSUU5R0lFRk9XU0JMU1U1RUxDQmxhWFJvWlhJZ1pYaHdjbVZ6Y3lCdmNpQnBiWEJzYVdWa0xseHVJQ29nVTJWbElIUm9aU0JNYVdObGJuTmxJR1p2Y2lCMGFHVWdjM0JsWTJsbWFXTWdiR0Z1WjNWaFoyVWdaMjkyWlhKdWFXNW5JSEJsY20xcGMzTnBiMjV6SUdGdVpGeHVJQ29nYkdsdGFYUmhkR2x2Ym5NZ2RXNWtaWElnZEdobElFeHBZMlZ1YzJVdVhHNGdLaUE5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMWNiaUFxTDF4dVhHNXBiWEJ2Y25RZ2UxSmhibVJ2YlVadWZTQm1jbTl0SUNjdUwzVnRZWEFuTzF4dVhHNHZLaXBjYmlBcUlGTnBiWEJzWlNCeVlXNWtiMjBnYVc1MFpXZGxjaUJtZFc1amRHbHZibHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2RHRjFVbUZ1WkVsdWRDaHVPaUJ1ZFcxaVpYSXNJSEpoYm1SdmJUb2dVbUZ1Wkc5dFJtNHBJSHRjYmlBZ2NtVjBkWEp1SUUxaGRHZ3VabXh2YjNJb2NtRnVaRzl0S0NrZ0tpQnVLVHRjYm4xY2JseHVMeW9xWEc0Z0tpQlRhVzF3YkdVZ2NtRnVaRzl0SUdac2IyRjBJR1oxYm1OMGFXOXVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCMFlYVlNZVzVrS0hKaGJtUnZiVG9nVW1GdVpHOXRSbTRwSUh0Y2JpQWdjbVYwZFhKdUlISmhibVJ2YlNncE8xeHVmVnh1THlvcVhHNGdLaUJEYjIxd2RYUmxJSFJvWlNBb2MzUmhibVJoY21RZ2JESXBJRzV2Y20wZ2IyWWdZU0IyWldOMGIzSXVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdWIzSnRLSFpsWXpvZ2JuVnRZbVZ5VzEwcElIdGNiaUFnYkdWMElISmxjM1ZzZENBOUlEQTdYRzRnSUdadmNpQW9ZMjl1YzNRZ2FYUmxiU0J2WmlCMlpXTXBYRzRnSUNBZ2NtVnpkV3gwSUNzOUlHbDBaVzBnS2lvZ01qdGNibHh1SUNCeVpYUjFjbTRnVFdGMGFDNXpjWEowS0hKbGMzVnNkQ2s3WEc1OVhHNWNiaThxS2x4dUlDb2dRM0psWVhSbGN5QmhiaUJsYlhCMGVTQmhjbkpoZVNBb1ptbHNiR1ZrSUhkcGRHZ2dkVzVrWldacGJtVmtLVnh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1pXMXdkSGtvYmpvZ2JuVnRZbVZ5S1RvZ2RXNWtaV1pwYm1Wa1cxMGdlMXh1SUNCamIyNXpkQ0J2ZFhSd2RYUTZJSFZ1WkdWbWFXNWxaRnRkSUQwZ1cxMDdYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2Jqc2dhU3NyS1Z4dUlDQWdJRzkxZEhCMWRDNXdkWE5vS0hWdVpHVm1hVzVsWkNrN1hHNWNiaUFnY21WMGRYSnVJRzkxZEhCMWREdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUdGdUlHRnljbUY1SUdacGJHeGxaQ0IzYVhSb0lHbHVaR1Y0SUhaaGJIVmxjMXh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2NtRnVaMlVvYmpvZ2JuVnRZbVZ5S1RvZ2JuVnRZbVZ5VzEwZ2UxeHVJQ0J5WlhSMWNtNGdaVzF3ZEhrb2Jpa3ViV0Z3S0NoZkxDQnBLU0E5UGlCcEtUdGNibjFjYmx4dUx5b3FYRzRnS2lCRGNtVmhkR1Z6SUdGdUlHRnljbUY1SUdacGJHeGxaQ0IzYVhSb0lHRWdjM0JsWTJsbWFXTWdkbUZzZFdWY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR1pwYkd4bFpDaHVPaUJ1ZFcxaVpYSXNJSFk2SUc1MWJXSmxjaWs2SUc1MWJXSmxjbHRkSUh0Y2JpQWdjbVYwZFhKdUlHVnRjSFI1S0c0cExtMWhjQ2dvS1NBOVBpQjJLVHRjYm4xY2JseHVMeW9xWEc0Z0tpQkRjbVZoZEdWeklHRnVJR0Z5Y21GNUlHWnBiR3hsWkNCM2FYUm9JSHBsY205elhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUI2WlhKdmN5aHVPaUJ1ZFcxaVpYSXBPaUJ1ZFcxaVpYSmJYU0I3WEc0Z0lISmxkSFZ5YmlCbWFXeHNaV1FvYml3Z01DazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsY3lCaGJpQmhjbkpoZVNCbWFXeHNaV1FnZDJsMGFDQnZibVZ6WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnZibVZ6S0c0NklHNTFiV0psY2lrNklHNTFiV0psY2x0ZElIdGNiaUFnY21WMGRYSnVJR1pwYkd4bFpDaHVMQ0F4S1R0Y2JuMWNibHh1THlvcVhHNGdLaUJEY21WaGRHVnpJR0Z1SUdGeWNtRjVJR1p5YjIwZ1lTQjBieUJpTENCdlppQnNaVzVuZEdnZ2JHVnVMQ0JwYm1Oc2RYTnBkbVZjYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHeHBibVZoY2loaE9pQnVkVzFpWlhJc0lHSTZJRzUxYldKbGNpd2diR1Z1T2lCdWRXMWlaWElwT2lCdWRXMWlaWEpiWFNCN1hHNGdJSEpsZEhWeWJpQmxiWEIwZVNoc1pXNHBMbTFoY0Nnb1h5d2dhU2tnUFQ0Z2UxeHVJQ0FnSUhKbGRIVnliaUJoSUNzZ2FTQXFJQ2dvWWlBdElHRXBJQzhnS0d4bGJpQXRJREVwS1R0Y2JpQWdmU2s3WEc1OVhHNWNiaThxS2x4dUlDb2dVbVYwZFhKdWN5QjBhR1VnYzNWdElHOW1JR0Z1SUdGeWNtRjVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCemRXMG9hVzV3ZFhRNklHNTFiV0psY2x0ZEtUb2diblZ0WW1WeUlIdGNiaUFnY21WMGRYSnVJR2x1Y0hWMExuSmxaSFZqWlNnb2MzVnRMQ0IyWVd3cElEMCtJSE4xYlNBcklIWmhiQ2s3WEc1OVhHNWNiaThxS2x4dUlDb2dVbVYwZFhKdWN5QjBhR1VnYldWaGJpQnZaaUJoYmlCaGNuSmhlVnh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2JXVmhiaWhwYm5CMWREb2diblZ0WW1WeVcxMHBPaUJ1ZFcxaVpYSWdlMXh1SUNCeVpYUjFjbTRnYzNWdEtHbHVjSFYwS1NBdklHbHVjSFYwTG14bGJtZDBhRHRjYm4xY2JseHVMeW9xWEc0Z0tpQlNaWFIxY201eklIUm9aU0J0WVhocGJYVnRJSFpoYkhWbElHOW1JR0Z1SUdGeWNtRjVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdFlYZ29hVzV3ZFhRNklHNTFiV0psY2x0ZEtUb2diblZ0WW1WeUlIdGNiaUFnYkdWMElHMWhlQ0E5SURBN1hHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnYVc1d2RYUXViR1Z1WjNSb095QnBLeXNwWEc0Z0lDQWdiV0Y0SUQwZ2FXNXdkWFJiYVYwZ1BpQnRZWGdnUHlCcGJuQjFkRnRwWFNBNklHMWhlRHRjYmx4dUlDQnlaWFIxY200Z2JXRjRPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGSmxkSFZ5Ym5NZ2RHaGxJRzFoZUdsdGRXMGdkbUZzZFdVZ2IyWWdZU0F5WkNCaGNuSmhlVnh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2JXRjRNbVFvYVc1d2RYUTZJRzUxYldKbGNsdGRXMTBwT2lCdWRXMWlaWElnZTF4dUlDQnNaWFFnYldGNElEMGdNRHRjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnBibkIxZEM1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lHWnZjaUFvYkdWMElHb2dQU0F3T3lCcUlEd2dhVzV3ZFhSYmFWMHViR1Z1WjNSb095QnFLeXNwWEc0Z0lDQWdJQ0J0WVhnZ1BTQnBibkIxZEZ0cFhWdHFYU0ErSUcxaGVDQS9JR2x1Y0hWMFcybGRXMnBkSURvZ2JXRjRPMXh1SUNCOVhHNGdJSEpsZEhWeWJpQnRZWGc3WEc1OVhHNWNiaThxS2x4dUlDb2dSMlZ1WlhKaGRHVWdibE5oYlhCc1pYTWdiV0Z1ZVNCcGJuUmxaMlZ5Y3lCbWNtOXRJREFnZEc4Z2NHOXZiRk5wZW1VZ2MzVmphQ0IwYUdGMElHNXZYRzRnS2lCcGJuUmxaMlZ5SUdseklITmxiR1ZqZEdWa0lIUjNhV05sTGlCVWFHVWdaSFZ3YkdsallYUnBiMjRnWTI5dWMzUnlZV2x1ZENCcGN5QmhZMmhwWlhabFpDQjJhV0ZjYmlBcUlISmxhbVZqZEdsdmJpQnpZVzF3YkdsdVp5NWNiaUFxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUhKbGFtVmpkR2x2YmxOaGJYQnNaU2hjYmlBZ2JsTmhiWEJzWlhNNklHNTFiV0psY2l4Y2JpQWdjRzl2YkZOcGVtVTZJRzUxYldKbGNpeGNiaUFnY21GdVpHOXRPaUJTWVc1a2IyMUdibHh1S1RvZ2JuVnRZbVZ5VzEwZ2UxeHVJQ0JqYjI1emRDQnlaWE4xYkhRZ1BTQjZaWEp2Y3lodVUyRnRjR3hsY3lrN1hHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnYmxOaGJYQnNaWE03SUdrckt5a2dlMXh1SUNBZ0lHeGxkQ0J5WldwbFkzUlRZVzF3YkdVZ1BTQjBjblZsTzF4dUlDQWdJSGRvYVd4bElDaHlaV3BsWTNSVFlXMXdiR1VwSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJR29nUFNCMFlYVlNZVzVrU1c1MEtIQnZiMnhUYVhwbExDQnlZVzVrYjIwcE8xeHVJQ0FnSUNBZ2JHVjBJR0p5YjJ0bGJpQTlJR1poYkhObE8xeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2F5QTlJREE3SUdzZ1BDQnBPeUJyS3lzcElIdGNiaUFnSUNBZ0lDQWdhV1lnS0dvZ1BUMDlJSEpsYzNWc2RGdHJYU2tnZTF4dUlDQWdJQ0FnSUNBZ0lHSnliMnRsYmlBOUlIUnlkV1U3WEc0Z0lDQWdJQ0FnSUNBZ1luSmxZV3M3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JpQWdJQ0FnSUdsbUlDZ2hZbkp2YTJWdUtWeHVJQ0FnSUNBZ0lDQnlaV3BsWTNSVFlXMXdiR1VnUFNCbVlXeHpaVHRjYmx4dUlDQWdJQ0FnY21WemRXeDBXMmxkSUQwZ2FqdGNiaUFnSUNCOVhHNGdJSDFjYmlBZ2NtVjBkWEp1SUhKbGMzVnNkRHRjYm4xY2JseHVMeW9xWEc0Z0tpQlNaWE5vWVhCbGN5QmhJREZrSUdGeWNtRjVJR2x1ZEc4Z1lTQXlSQ0J2WmlCbmFYWmxiaUJrYVcxbGJuTnBiMjV6TGx4dUlDb3ZYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdjbVZ6YUdGd1pUSmtQRlErS0hnNklGUmJYU3dnWVRvZ2JuVnRZbVZ5TENCaU9pQnVkVzFpWlhJcE9pQlVXMTFiWFNCN1hHNGdJR052Ym5OMElISnZkM002SUZSYlhWdGRJRDBnVzEwN1hHNGdJQzh2SUd4bGRDQmpiM1Z1ZENBOUlEQTdYRzRnSUd4bGRDQnBibVJsZUNBOUlEQTdYRzVjYmlBZ2FXWWdLSGd1YkdWdVozUm9JQ0U5UFNCaElDb2dZaWxjYmlBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb0owRnljbUY1SUdScGJXVnVjMmx2Ym5NZ2JYVnpkQ0J0WVhSamFDQnBibkIxZENCc1pXNW5kR2d1SnlrN1hHNWNibHh1SUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHRTdJR2tyS3lrZ2UxeHVJQ0FnSUdOdmJuTjBJR052YkRvZ1ZGdGRJRDBnVzEwN1hHNGdJQ0FnWm05eUlDaHNaWFFnYWlBOUlEQTdJR29nUENCaU95QnFLeXNwSUh0Y2JpQWdJQ0FnSUdOdmJDNXdkWE5vS0hoYmFXNWtaWGhkS1R0Y2JpQWdJQ0FnSUdsdVpHVjRJQ3M5SURFN1hHNGdJQ0FnZlZ4dUlDQWdJSEp2ZDNNdWNIVnphQ2hqYjJ3cE8xeHVJQ0FnSUM4dklHTnZkVzUwSUNzOUlERTdYRzRnSUgxY2JpQWdjbVYwZFhKdUlISnZkM003WEc1OVhHNGlYWDA9IiwiLyoqXG4gKiBAbGljZW5zZVxuICpcbiAqIENvcHlyaWdodCAyMDE5IEdvb2dsZSBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKi9cbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuLyoqXG4gKiAgQ29uc3RydWN0b3IgZm9yIHRoZSBoZWFwIG9iamVjdHMuIFRoZSBoZWFwcyBhcmUgdXNlZFxuICogZm9yIGFwcHJveGltYXRlIG5lYXJlc3QgbmVpZ2hib3Igc2VhcmNoLCBtYWludGFpbmluZyBhIGxpc3Qgb2YgcG90ZW50aWFsXG4gKiBuZWlnaGJvcnMgc29ydGVkIGJ5IHRoZWlyIGRpc3RhbmNlLiBXZSBhbHNvIGZsYWcgaWYgcG90ZW50aWFsIG5laWdoYm9yc1xuICogYXJlIG5ld2x5IGFkZGVkIHRvIHRoZSBsaXN0IG9yIG5vdC4gSW50ZXJuYWxseSB0aGlzIGlzIHN0b3JlZCBhc1xuICogYSBzaW5nbGUgYXJyYXk7IHRoZSBmaXJzdCBheGlzIGRldGVybWluZXMgd2hldGhlciB3ZSBhcmUgbG9va2luZyBhdCB0aGVcbiAqIGFycmF5IG9mIGNhbmRpZGF0ZSBpbmRpY2VzLCB0aGUgYXJyYXkgb2YgZGlzdGFuY2VzLCBvciB0aGUgZmxhZyBhcnJheSBmb3JcbiAqIHdoZXRoZXIgZWxlbWVudHMgYXJlIG5ldyBvciBub3QuIEVhY2ggb2YgdGhlc2UgYXJyYXlzIGFyZSBvZiBzaGFwZVxuICogKGBgblBvaW50c2BgLCBgYHNpemVgYClcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1ha2VIZWFwKG5Qb2ludHMsIHNpemUpIHtcbiAgICBjb25zdCBtYWtlQXJyYXlzID0gKGZpbGxWYWx1ZSkgPT4ge1xuICAgICAgICByZXR1cm4gdXRpbHMuZW1wdHkoblBvaW50cykubWFwKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB1dGlscy5maWxsZWQoc2l6ZSwgZmlsbFZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgICBjb25zdCBoZWFwID0gW107XG4gICAgaGVhcC5wdXNoKG1ha2VBcnJheXMoLTEpKTtcbiAgICBoZWFwLnB1c2gobWFrZUFycmF5cyhJbmZpbml0eSkpO1xuICAgIGhlYXAucHVzaChtYWtlQXJyYXlzKDApKTtcbiAgICByZXR1cm4gaGVhcDtcbn1cbi8qKlxuICogR2VuZXJhdGUgbl9zYW1wbGVzIG1hbnkgaW50ZWdlcnMgZnJvbSAwIHRvIHBvb2xfc2l6ZSBzdWNoIHRoYXQgbm9cbiAqIGludGVnZXIgaXMgc2VsZWN0ZWQgdHdpY2UuIFRoZSBkdXBsaWNhdGlvbiBjb25zdHJhaW50IGlzIGFjaGlldmVkIHZpYVxuICogcmVqZWN0aW9uIHNhbXBsaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVqZWN0aW9uU2FtcGxlKG5TYW1wbGVzLCBwb29sU2l6ZSwgcmFuZG9tKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gdXRpbHMuemVyb3MoblNhbXBsZXMpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgblNhbXBsZXM7IGkrKykge1xuICAgICAgICBsZXQgcmVqZWN0U2FtcGxlID0gdHJ1ZTtcbiAgICAgICAgbGV0IGogPSAwO1xuICAgICAgICB3aGlsZSAocmVqZWN0U2FtcGxlKSB7XG4gICAgICAgICAgICBqID0gdXRpbHMudGF1UmFuZEludChwb29sU2l6ZSwgcmFuZG9tKTtcbiAgICAgICAgICAgIGxldCBicm9rZW4gPSBmYWxzZTtcbiAgICAgICAgICAgIGZvciAobGV0IGsgPSAwOyBrIDwgaTsgaysrKSB7XG4gICAgICAgICAgICAgICAgaWYgKGogPT09IHJlc3VsdFtrXSkge1xuICAgICAgICAgICAgICAgICAgICBicm9rZW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWJyb2tlbilcbiAgICAgICAgICAgICAgICByZWplY3RTYW1wbGUgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICByZXN1bHRbaV0gPSBqO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuLyoqXG4gKiBQdXNoIGEgbmV3IGVsZW1lbnQgb250byB0aGUgaGVhcC4gVGhlIGhlYXAgc3RvcmVzIHBvdGVudGlhbCBuZWlnaGJvcnNcbiAqIGZvciBlYWNoIGRhdGEgcG9pbnQuIFRoZSBgYHJvd2BgIHBhcmFtZXRlciBkZXRlcm1pbmVzIHdoaWNoIGRhdGEgcG9pbnQgd2VcbiAqIGFyZSBhZGRyZXNzaW5nLCB0aGUgYGB3ZWlnaHRgYCBkZXRlcm1pbmVzIHRoZSBkaXN0YW5jZSAoZm9yIGhlYXAgc29ydGluZyksXG4gKiB0aGUgYGBpbmRleGBgIGlzIHRoZSBlbGVtZW50IHRvIGFkZCwgYW5kIHRoZSBmbGFnIGRldGVybWluZXMgd2hldGhlciB0aGlzXG4gKiBpcyB0byBiZSBjb25zaWRlcmVkIGEgbmV3IGFkZGl0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGVhcFB1c2goaGVhcCwgcm93LCB3ZWlnaHQsIGluZGV4LCBmbGFnKSB7XG4gICAgcm93ID0gTWF0aC5mbG9vcihyb3cpO1xuICAgIGNvbnN0IGluZGljZXMgPSBoZWFwWzBdW3Jvd107XG4gICAgY29uc3Qgd2VpZ2h0cyA9IGhlYXBbMV1bcm93XTtcbiAgICAvL2NvbnN0IGlzTmV3ID0gaGVhcFsyXVtyb3ddO1xuICAgIGlmICh3ZWlnaHQgPj0gd2VpZ2h0c1swXSlcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgLy8gQnJlYWsgaWYgd2UgYWxyZWFkeSBoYXZlIHRoaXMgZWxlbWVudC5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGluZGljZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGluZGV4ID09PSBpbmRpY2VzW2ldKVxuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiB1bmNoZWNrZWRIZWFwUHVzaChoZWFwLCByb3csIHdlaWdodCwgaW5kZXgsIGZsYWcpO1xufVxuLyoqXG4gKiBQdXNoIGEgbmV3IGVsZW1lbnQgb250byB0aGUgaGVhcC4gVGhlIGhlYXAgc3RvcmVzIHBvdGVudGlhbCBuZWlnaGJvcnNcbiAqIGZvciBlYWNoIGRhdGEgcG9pbnQuIFRoZSBgYHJvd2BgIHBhcmFtZXRlciBkZXRlcm1pbmVzIHdoaWNoIGRhdGEgcG9pbnQgd2VcbiAqIGFyZSBhZGRyZXNzaW5nLCB0aGUgYGB3ZWlnaHRgYCBkZXRlcm1pbmVzIHRoZSBkaXN0YW5jZSAoZm9yIGhlYXAgc29ydGluZyksXG4gKiB0aGUgYGBpbmRleGBgIGlzIHRoZSBlbGVtZW50IHRvIGFkZCwgYW5kIHRoZSBmbGFnIGRldGVybWluZXMgd2hldGhlciB0aGlzXG4gKiBpcyB0byBiZSBjb25zaWRlcmVkIGEgbmV3IGFkZGl0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5jaGVja2VkSGVhcFB1c2goaGVhcCwgcm93LCB3ZWlnaHQsIGluZGV4LCBmbGFnKSB7XG4gICAgY29uc3QgaW5kaWNlcyA9IGhlYXBbMF1bcm93XTtcbiAgICBjb25zdCB3ZWlnaHRzID0gaGVhcFsxXVtyb3ddO1xuICAgIGNvbnN0IGlzTmV3ID0gaGVhcFsyXVtyb3ddO1xuICAgIGlmICh3ZWlnaHQgPj0gd2VpZ2h0c1swXSlcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgLy8gSW5zZXJ0IHZhbCBhdCBwb3NpdGlvbiB6ZXJvXG4gICAgd2VpZ2h0c1swXSA9IHdlaWdodDtcbiAgICBpbmRpY2VzWzBdID0gaW5kZXg7XG4gICAgaXNOZXdbMF0gPSBmbGFnO1xuICAgIC8vIERlc2NlbmQgdGhlIGhlYXAsIHN3YXBwaW5nIHZhbHVlcyB1bnRpbCB0aGUgbWF4IGhlYXAgY3JpdGVyaW9uIGlzIG1ldFxuICAgIGxldCBpID0gMDtcbiAgICBsZXQgaVN3YXAgPSAwO1xuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgIGNvbnN0IGljMSA9IDIgKiBpICsgMTtcbiAgICAgICAgY29uc3QgaWMyID0gaWMxICsgMTtcbiAgICAgICAgY29uc3QgaGVhcFNoYXBlMiA9IGhlYXBbMF1bMF0ubGVuZ3RoO1xuICAgICAgICBpZiAoaWMxID49IGhlYXBTaGFwZTIpIHtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGljMiA+PSBoZWFwU2hhcGUyKSB7XG4gICAgICAgICAgICBpZiAod2VpZ2h0c1tpYzFdID4gd2VpZ2h0KVxuICAgICAgICAgICAgICAgIGlTd2FwID0gaWMxO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHdlaWdodHNbaWMxXSA+PSB3ZWlnaHRzW2ljMl0pIHtcbiAgICAgICAgICAgIGlmICh3ZWlnaHQgPCB3ZWlnaHRzW2ljMV0pXG4gICAgICAgICAgICAgICAgaVN3YXAgPSBpYzE7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBpZiAod2VpZ2h0IDwgd2VpZ2h0c1tpYzJdKVxuICAgICAgICAgICAgICAgIGlTd2FwID0gaWMyO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHdlaWdodHNbaV0gPSB3ZWlnaHRzW2lTd2FwXTtcbiAgICAgICAgaW5kaWNlc1tpXSA9IGluZGljZXNbaVN3YXBdO1xuICAgICAgICBpc05ld1tpXSA9IGlzTmV3W2lTd2FwXTtcbiAgICAgICAgaSA9IGlTd2FwO1xuICAgIH1cbiAgICB3ZWlnaHRzW2ldID0gd2VpZ2h0O1xuICAgIGluZGljZXNbaV0gPSBpbmRleDtcbiAgICBpc05ld1tpXSA9IGZsYWc7XG4gICAgcmV0dXJuIDE7XG59XG4vKipcbiAqIEJ1aWxkIGEgaGVhcCBvZiBjYW5kaWRhdGUgbmVpZ2hib3JzIGZvciBuZWFyZXN0IG5laWdoYm9yIGRlc2NlbnQuIEZvclxuICogZWFjaCB2ZXJ0ZXggdGhlIGNhbmRpZGF0ZSBuZWlnaGJvcnMgYXJlIGFueSBjdXJyZW50IG5laWdoYm9ycywgYW5kIGFueVxuICogdmVydGljZXMgdGhhdCBoYXZlIHRoZSB2ZXJ0ZXggYXMgb25lIG9mIHRoZWlyIG5lYXJlc3QgbmVpZ2hib3JzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRDYW5kaWRhdGVzKGN1cnJlbnRHcmFwaCwgblZlcnRpY2VzLCBuTmVpZ2hib3JzLCBtYXhDYW5kaWRhdGVzLCByYW5kb20pIHtcbiAgICBjb25zdCBjYW5kaWRhdGVOZWlnaGJvcnMgPSBtYWtlSGVhcChuVmVydGljZXMsIG1heENhbmRpZGF0ZXMpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgblZlcnRpY2VzOyBpKyspIHtcbiAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBuTmVpZ2hib3JzOyBqKyspIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50R3JhcGhbMF1baV1bal0gPCAwKVxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgY29uc3QgaWR4ID0gY3VycmVudEdyYXBoWzBdW2ldW2pdO1xuICAgICAgICAgICAgY29uc3QgaXNuID0gY3VycmVudEdyYXBoWzJdW2ldW2pdO1xuICAgICAgICAgICAgY29uc3QgZCA9IHV0aWxzLnRhdVJhbmQocmFuZG9tKTtcbiAgICAgICAgICAgIGhlYXBQdXNoKGNhbmRpZGF0ZU5laWdoYm9ycywgaSwgZCwgaWR4LCBpc24pO1xuICAgICAgICAgICAgaGVhcFB1c2goY2FuZGlkYXRlTmVpZ2hib3JzLCBpZHgsIGQsIGksIGlzbik7XG4gICAgICAgICAgICBjdXJyZW50R3JhcGhbMl1baV1bal0gPSAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjYW5kaWRhdGVOZWlnaGJvcnM7XG59XG4vKipcbiAqIEdpdmVuIGFuIGFycmF5IG9mIGhlYXBzIChvZiBpbmRpY2VzIGFuZCB3ZWlnaHRzKSwgdW5wYWNrIHRoZSBoZWFwXG4gKiBvdXQgdG8gZ2l2ZSBhbmQgYXJyYXkgb2Ygc29ydGVkIGxpc3RzIG9mIGluZGljZXMgYW5kIHdlaWdodHMgYnkgaW5jcmVhc2luZ1xuICogd2VpZ2h0LiBUaGlzIGlzIGVmZmVjdGl2ZWx5IGp1c3QgdGhlIHNlY29uZCBoYWxmIG9mIGhlYXAgc29ydCAodGhlIGZpcnN0XG4gKiBoYWxmIG5vdCBiZWluZyByZXF1aXJlZCBzaW5jZSB3ZSBhbHJlYWR5IGhhdmUgdGhlIGRhdGEgaW4gYSBoZWFwKS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlaGVhcFNvcnQoaGVhcCkge1xuICAgIGNvbnN0IGluZGljZXMgPSBoZWFwWzBdO1xuICAgIGNvbnN0IHdlaWdodHMgPSBoZWFwWzFdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5kaWNlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBpbmRIZWFwID0gaW5kaWNlc1tpXTtcbiAgICAgICAgY29uc3QgZGlzdEhlYXAgPSB3ZWlnaHRzW2ldO1xuICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGluZEhlYXAubGVuZ3RoIC0gMTsgaisrKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRIZWFwSW5kZXggPSBpbmRIZWFwLmxlbmd0aCAtIGogLSAxO1xuICAgICAgICAgICAgY29uc3QgZGlzdEhlYXBJbmRleCA9IGRpc3RIZWFwLmxlbmd0aCAtIGogLSAxO1xuICAgICAgICAgICAgY29uc3QgdGVtcDEgPSBpbmRIZWFwWzBdO1xuICAgICAgICAgICAgaW5kSGVhcFswXSA9IGluZEhlYXBbaW5kSGVhcEluZGV4XTtcbiAgICAgICAgICAgIGluZEhlYXBbaW5kSGVhcEluZGV4XSA9IHRlbXAxO1xuICAgICAgICAgICAgY29uc3QgdGVtcDIgPSBkaXN0SGVhcFswXTtcbiAgICAgICAgICAgIGRpc3RIZWFwWzBdID0gZGlzdEhlYXBbZGlzdEhlYXBJbmRleF07XG4gICAgICAgICAgICBkaXN0SGVhcFtkaXN0SGVhcEluZGV4XSA9IHRlbXAyO1xuICAgICAgICAgICAgc2lmdERvd24oZGlzdEhlYXAsIGluZEhlYXAsIGRpc3RIZWFwSW5kZXgsIDApO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGluZGljZXMsIHdlaWdodHMgfTtcbn1cbi8qKlxuICogUmVzdG9yZSB0aGUgaGVhcCBwcm9wZXJ0eSBmb3IgYSBoZWFwIHdpdGggYW4gb3V0IG9mIHBsYWNlIGVsZW1lbnRcbiAqIGF0IHBvc2l0aW9uIGBgZWx0YGAuIFRoaXMgd29ya3Mgd2l0aCBhIGhlYXAgcGFpciB3aGVyZSBoZWFwMSBjYXJyaWVzXG4gKiB0aGUgd2VpZ2h0cyBhbmQgaGVhcDIgaG9sZHMgdGhlIGNvcnJlc3BvbmRpbmcgZWxlbWVudHMuXG4gKi9cbmZ1bmN0aW9uIHNpZnREb3duKGhlYXAxLCBoZWFwMiwgY2VpbGluZywgZWx0KSB7XG4gICAgd2hpbGUgKGVsdCAqIDIgKyAxIDwgY2VpbGluZykge1xuICAgICAgICBjb25zdCBsZWZ0Q2hpbGQgPSBlbHQgKiAyICsgMTtcbiAgICAgICAgY29uc3QgcmlnaHRDaGlsZCA9IGxlZnRDaGlsZCArIDE7XG4gICAgICAgIGxldCBzd2FwID0gZWx0O1xuICAgICAgICBpZiAoaGVhcDFbc3dhcF0gPCBoZWFwMVtsZWZ0Q2hpbGRdKVxuICAgICAgICAgICAgc3dhcCA9IGxlZnRDaGlsZDtcbiAgICAgICAgaWYgKHJpZ2h0Q2hpbGQgPCBjZWlsaW5nICYmIGhlYXAxW3N3YXBdIDwgaGVhcDFbcmlnaHRDaGlsZF0pXG4gICAgICAgICAgICBzd2FwID0gcmlnaHRDaGlsZDtcbiAgICAgICAgaWYgKHN3YXAgPT09IGVsdCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB0ZW1wMSA9IGhlYXAxW2VsdF07XG4gICAgICAgICAgICBoZWFwMVtlbHRdID0gaGVhcDFbc3dhcF07XG4gICAgICAgICAgICBoZWFwMVtzd2FwXSA9IHRlbXAxO1xuICAgICAgICAgICAgY29uc3QgdGVtcDIgPSBoZWFwMltlbHRdO1xuICAgICAgICAgICAgaGVhcDJbZWx0XSA9IGhlYXAyW3N3YXBdO1xuICAgICAgICAgICAgaGVhcDJbc3dhcF0gPSB0ZW1wMjtcbiAgICAgICAgICAgIGVsdCA9IHN3YXA7XG4gICAgICAgIH1cbiAgICB9XG59XG4vKipcbiAqIFNlYXJjaCB0aGUgaGVhcCBmb3IgdGhlIHNtYWxsZXN0IGVsZW1lbnQgdGhhdCBpcyBzdGlsbCBmbGFnZ2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc21hbGxlc3RGbGFnZ2VkKGhlYXAsIHJvdykge1xuICAgIGNvbnN0IGluZCA9IGhlYXBbMF1bcm93XTtcbiAgICBjb25zdCBkaXN0ID0gaGVhcFsxXVtyb3ddO1xuICAgIGNvbnN0IGZsYWcgPSBoZWFwWzJdW3Jvd107XG4gICAgbGV0IG1pbkRpc3QgPSBJbmZpbml0eTtcbiAgICBsZXQgcmVzdWx0SW5kZXggPSAtMTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA+IGluZC5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoZmxhZ1tpXSA9PT0gMSAmJiBkaXN0W2ldIDwgbWluRGlzdCkge1xuICAgICAgICAgICAgbWluRGlzdCA9IGRpc3RbaV07XG4gICAgICAgICAgICByZXN1bHRJbmRleCA9IGk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWYgKHJlc3VsdEluZGV4ID49IDApIHtcbiAgICAgICAgZmxhZ1tyZXN1bHRJbmRleF0gPSAwO1xuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcihpbmRbcmVzdWx0SW5kZXhdKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIHJldHVybiAtMTtcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lhR1ZoY0M1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJbWhsWVhBdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUU3T3pzN096czdPenM3T3pzN096czdPMGRCYVVKSE8wRkJNa05JTEU5QlFVOHNTMEZCU3l4TFFVRkxMRTFCUVUwc1UwRkJVeXhEUVVGRE8wRkJTV3BET3pzN096czdPenM3UjBGVFJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4UlFVRlJMRU5CUVVNc1QwRkJaU3hGUVVGRkxFbEJRVms3U1VGRGNFUXNUVUZCVFN4VlFVRlZMRWRCUVVjc1EwRkJReXhUUVVGcFFpeEZRVUZGTEVWQlFVVTdVVUZEZGtNc1QwRkJUeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFVkJRVVU3V1VGRGJrTXNUMEZCVHl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUlVGQlJTeFRRVUZUTEVOQlFVTXNRMEZCUXp0UlFVTjJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5NTEVOQlFVTXNRMEZCUXp0SlFVVkdMRTFCUVUwc1NVRkJTU3hIUVVGVExFVkJRVVVzUTBGQlF6dEpRVU4wUWl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRNVUlzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5vUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTNwQ0xFOUJRVThzU1VGQlNTeERRVUZETzBGQlEyUXNRMEZCUXp0QlFVVkVPenM3TzBkQlNVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1pVRkJaU3hEUVVNM1FpeFJRVUZuUWl4RlFVTm9RaXhSUVVGblFpeEZRVU5vUWl4TlFVRm5RanRKUVVWb1FpeE5RVUZOTEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzBsQlEzSkRMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4UlFVRlJMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3VVVGRGFrTXNTVUZCU1N4WlFVRlpMRWRCUVVjc1NVRkJTU3hEUVVGRE8xRkJRM2hDTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOV0xFOUJRVThzV1VGQldTeEZRVUZGTzFsQlEyNUNMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZETEZGQlFWRXNSVUZCUlN4TlFVRk5MRU5CUVVNc1EwRkJRenRaUVVOMlF5eEpRVUZKTEUxQlFVMHNSMEZCUnl4TFFVRkxMRU5CUVVNN1dVRkRia0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkRNVUlzU1VGQlNTeERRVUZETEV0QlFVc3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRk8yOUNRVU51UWl4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRE8yOUNRVU5rTEUxQlFVMDdhVUpCUTFBN1lVRkRSanRaUVVORUxFbEJRVWtzUTBGQlF5eE5RVUZOTzJkQ1FVRkZMRmxCUVZrc1IwRkJSeXhMUVVGTExFTkJRVU03VTBGRGJrTTdVVUZEUkN4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzB0QlEyWTdTVUZEUkN4UFFVRlBMRTFCUVUwc1EwRkJRenRCUVVOb1FpeERRVUZETzBGQlJVUTdPenM3T3p0SFFVMUhPMEZCUTBnc1RVRkJUU3hWUVVGVkxGRkJRVkVzUTBGRGRFSXNTVUZCVlN4RlFVTldMRWRCUVZjc1JVRkRXQ3hOUVVGakxFVkJRMlFzUzBGQllTeEZRVU5pTEVsQlFWazdTVUZGV2l4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTjBRaXhOUVVGTkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRE4wSXNUVUZCVFN4UFFVRlBMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUXpkQ0xEWkNRVUUyUWp0SlFVVTNRaXhKUVVGSkxFMUJRVTBzU1VGQlNTeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNSQ0xFOUJRVThzUTBGQlF5eERRVUZETzBsQlIxZ3NlVU5CUVhsRE8wbEJRM3BETEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xRkJRM1pETEVsQlFVa3NTMEZCU3l4TFFVRkxMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU03V1VGRGRFSXNUMEZCVHl4RFFVRkRMRU5CUVVNN1MwRkRXanRKUVVWRUxFOUJRVThzYVVKQlFXbENMRU5CUVVNc1NVRkJTU3hGUVVGRkxFZEJRVWNzUlVGQlJTeE5RVUZOTEVWQlFVVXNTMEZCU3l4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8wRkJRek5FTEVOQlFVTTdRVUZGUkRzN096czdPMGRCVFVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzYVVKQlFXbENMRU5CUXk5Q0xFbEJRVlVzUlVGRFZpeEhRVUZYTEVWQlExZ3NUVUZCWXl4RlFVTmtMRXRCUVdFc1JVRkRZaXhKUVVGWk8wbEJSVm9zVFVGQlRTeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlF6ZENMRTFCUVUwc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVNM1FpeE5RVUZOTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZGTTBJc1NVRkJTU3hOUVVGTkxFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTjBRaXhQUVVGUExFTkJRVU1zUTBGQlF6dEpRVWRZTERoQ1FVRTRRanRKUVVNNVFpeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRE8wbEJRM0JDTEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU03U1VGRGJrSXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dEpRVVZvUWl4M1JVRkJkMFU3U1VGRGVFVXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMVlzU1VGQlNTeExRVUZMTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTJRc1QwRkJUeXhKUVVGSkxFVkJRVVU3VVVGRFdDeE5RVUZOTEVkQlFVY3NSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU4wUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzFGQlJYQkNMRTFCUVUwc1ZVRkJWU3hIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU03VVVGRGNrTXNTVUZCU1N4SFFVRkhMRWxCUVVrc1ZVRkJWU3hGUVVGRk8xbEJRM0pDTEUxQlFVMDdVMEZEVUR0aFFVRk5MRWxCUVVrc1IwRkJSeXhKUVVGSkxGVkJRVlVzUlVGQlJUdFpRVU0xUWl4SlFVRkpMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eE5RVUZOTzJkQ1FVTjJRaXhMUVVGTExFZEJRVWNzUjBGQlJ5eERRVUZET3p0blFrRkZXaXhOUVVGTk8xTkJRMVE3WVVGQlRTeEpRVUZKTEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1NVRkJTU3hQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVTdXVUZEZGtNc1NVRkJTU3hOUVVGTkxFZEJRVWNzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXp0blFrRkRka0lzUzBGQlN5eEhRVUZITEVkQlFVY3NRMEZCUXpzN1owSkJSVm9zVFVGQlRUdFRRVU5VTzJGQlFVMDdXVUZEVEN4SlFVRkpMRTFCUVUwc1IwRkJSeXhQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETzJkQ1FVTjJRaXhMUVVGTExFZEJRVWNzUjBGQlJ5eERRVUZET3p0blFrRkZXaXhOUVVGTk8xTkJRMVE3VVVGRlJDeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1QwRkJUeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFGQlF6VkNMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFBRVUZQTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1VVRkROVUlzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFJRVVY0UWl4RFFVRkRMRWRCUVVjc1MwRkJTeXhEUVVGRE8wdEJRMWc3U1VGRlJDeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRE8wbEJRM0JDTEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU03U1VGRGJrSXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dEpRVU5vUWl4UFFVRlBMRU5CUVVNc1EwRkJRenRCUVVOWUxFTkJRVU03UVVGRlJEczdPenRIUVVsSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEdWQlFXVXNRMEZETjBJc1dVRkJhMElzUlVGRGJFSXNVMEZCYVVJc1JVRkRha0lzVlVGQmEwSXNSVUZEYkVJc1lVRkJjVUlzUlVGRGNrSXNUVUZCWjBJN1NVRkZhRUlzVFVGQlRTeHJRa0ZCYTBJc1IwRkJSeXhSUVVGUkxFTkJRVU1zVTBGQlV5eEZRVUZGTEdGQlFXRXNRMEZCUXl4RFFVRkRPMGxCUXpsRUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhUUVVGVExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdVVUZEYkVNc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRlZCUVZVc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU51UXl4SlFVRkpMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRE8yZENRVU16UWl4VFFVRlRPMWxCUlZnc1RVRkJUU3hIUVVGSExFZEJRVWNzV1VGQldTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEyeERMRTFCUVUwc1IwRkJSeXhIUVVGSExGbEJRVmtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5zUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVDBGQlR5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMWxCUTJoRExGRkJRVkVzUTBGQlF5eHJRa0ZCYTBJc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRU5CUVVNc1EwRkJRenRaUVVNM1F5eFJRVUZSTEVOQlFVTXNhMEpCUVd0Q0xFVkJRVVVzUjBGQlJ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRE4wTXNXVUZCV1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRUUVVNelFqdExRVU5HTzBsQlEwUXNUMEZCVHl4clFrRkJhMElzUTBGQlF6dEJRVU0xUWl4RFFVRkRPMEZCUlVRN096czdPMGRCUzBjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVlVGQlZTeERRVUZETEVsQlFWVTdTVUZEYmtNc1RVRkJUU3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTNoQ0xFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVWNFFpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRSUVVOMlF5eE5RVUZOTEU5QlFVOHNSMEZCUnl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRE0wSXNUVUZCVFN4UlFVRlJMRWRCUVVjc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFGQlJUVkNMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTXpReXhOUVVGTkxGbEJRVmtzUjBGQlJ5eFBRVUZQTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRE5VTXNUVUZCVFN4aFFVRmhMRWRCUVVjc1VVRkJVU3hEUVVGRExFMUJRVTBzUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUlRsRExFMUJRVTBzUzBGQlN5eEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVONlFpeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1QwRkJUeXhEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzFsQlEyNURMRTlCUVU4c1EwRkJReXhaUVVGWkxFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTTdXVUZGT1VJc1RVRkJUU3hMUVVGTExFZEJRVWNzVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpGQ0xGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4UlFVRlJMRU5CUVVNc1lVRkJZU3hEUVVGRExFTkJRVU03V1VGRGRFTXNVVUZCVVN4RFFVRkRMR0ZCUVdFc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF6dFpRVVZvUXl4UlFVRlJMRU5CUVVNc1VVRkJVU3hGUVVGRkxFOUJRVThzUlVGQlJTeGhRVUZoTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1UwRkRMME03UzBGRFJqdEpRVU5FTEU5QlFVOHNSVUZCUXl4UFFVRlBMRVZCUVVVc1QwRkJUeXhGUVVGRExFTkJRVU03UVVGRE5VSXNRMEZCUXp0QlFVVkVPenM3TzBkQlNVYzdRVUZEU0N4VFFVRlRMRkZCUVZFc1EwRkRaaXhMUVVGbExFVkJRMllzUzBGQlpTeEZRVU5tTEU5QlFXVXNSVUZEWml4SFFVRlhPMGxCUlZnc1QwRkJUeXhIUVVGSExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4UFFVRlBMRVZCUVVVN1VVRkROVUlzVFVGQlRTeFRRVUZUTEVkQlFVY3NSMEZCUnl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRE9VSXNUVUZCVFN4VlFVRlZMRWRCUVVjc1UwRkJVeXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5xUXl4SlFVRkpMRWxCUVVrc1IwRkJSeXhIUVVGSExFTkJRVU03VVVGRlppeEpRVUZKTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETzFsQlEyaERMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU03VVVGRmJrSXNTVUZCU1N4VlFVRlZMRWRCUVVjc1QwRkJUeXhKUVVGSkxFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNc1ZVRkJWU3hEUVVGRE8xbEJRM3BFTEVsQlFVa3NSMEZCUnl4VlFVRlZMRU5CUVVNN1VVRkhjRUlzU1VGQlNTeEpRVUZKTEV0QlFVc3NSMEZCUnl4RlFVRkZPMWxCUTJoQ0xFMUJRVTA3VTBGRFVEdGhRVUZOTzFsQlEwd3NUVUZCVFN4TFFVRkxMRWRCUVVjc1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFsQlEzcENMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN1dVRkRla0lzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRXRCUVVzc1EwRkJRenRaUVVWd1FpeE5RVUZOTEV0QlFVc3NSMEZCUnl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRGVrSXNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0WlFVTjZRaXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NTMEZCU3l4RFFVRkRPMWxCUTNCQ0xFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVMEZEV2p0TFFVTkdPMEZCUTBnc1EwRkJRenRCUVVWRU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4VlFVRlZMR1ZCUVdVc1EwRkJReXhKUVVGVkxFVkJRVVVzUjBGQlZ6dEpRVU55UkN4TlFVRk5MRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRla0lzVFVGQlRTeEpRVUZKTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlF6RkNMRTFCUVUwc1NVRkJTU3hIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVVeFFpeEpRVUZKTEU5QlFVOHNSMEZCUnl4UlFVRlJMRU5CUVVNN1NVRkRka0lzU1VGQlNTeFhRVUZYTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkZja0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1VVRkRia01zU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4UFFVRlBMRVZCUVVVN1dVRkRkRU1zVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOc1FpeFhRVUZYTEVkQlFVY3NRMEZCUXl4RFFVRkRPMU5CUTJwQ08wdEJRMFk3U1VGRlJDeEpRVUZKTEZkQlFWY3NTVUZCU1N4RFFVRkRMRVZCUVVVN1VVRkRjRUlzU1VGQlNTeERRVUZETEZkQlFWY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOMFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExGZEJRVmNzUTBGQlF5eERRVUZETEVOQlFVTTdTMEZEY2tNN1UwRkJUVHRSUVVOTUxFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTTdTMEZEV0R0QlFVTklMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SXZLaXBjYmlBcUlFQnNhV05sYm5ObFhHNGdLbHh1SUNvZ1EyOXdlWEpwWjJoMElESXdNVGtnUjI5dloyeGxJRXhNUXk0Z1FXeHNJRkpwWjJoMGN5QlNaWE5sY25abFpDNWNiaUFxWEc0Z0tpQk1hV05sYm5ObFpDQjFibVJsY2lCMGFHVWdRWEJoWTJobElFeHBZMlZ1YzJVc0lGWmxjbk5wYjI0Z01pNHdJQ2gwYUdVZ1hDSk1hV05sYm5ObFhDSXBPMXh1SUNvZ2VXOTFJRzFoZVNCdWIzUWdkWE5sSUhSb2FYTWdabWxzWlNCbGVHTmxjSFFnYVc0Z1kyOXRjR3hwWVc1alpTQjNhWFJvSUhSb1pTQk1hV05sYm5ObExseHVJQ29nV1c5MUlHMWhlU0J2WW5SaGFXNGdZU0JqYjNCNUlHOW1JSFJvWlNCTWFXTmxibk5sSUdGMFhHNGdLbHh1SUNvZ0lDQWdJR2gwZEhBNkx5OTNkM2N1WVhCaFkyaGxMbTl5Wnk5c2FXTmxibk5sY3k5TVNVTkZUbE5GTFRJdU1GeHVJQ3BjYmlBcUlGVnViR1Z6Y3lCeVpYRjFhWEpsWkNCaWVTQmhjSEJzYVdOaFlteGxJR3hoZHlCdmNpQmhaM0psWldRZ2RHOGdhVzRnZDNKcGRHbHVaeXdnYzI5bWRIZGhjbVZjYmlBcUlHUnBjM1J5YVdKMWRHVmtJSFZ1WkdWeUlIUm9aU0JNYVdObGJuTmxJR2x6SUdScGMzUnlhV0oxZEdWa0lHOXVJR0Z1SUZ3aVFWTWdTVk5jSWlCQ1FWTkpVeXhjYmlBcUlGZEpWRWhQVlZRZ1YwRlNVa0ZPVkVsRlV5QlBVaUJEVDA1RVNWUkpUMDVUSUU5R0lFRk9XU0JMU1U1RUxDQmxhWFJvWlhJZ1pYaHdjbVZ6Y3lCdmNpQnBiWEJzYVdWa0xseHVJQ29nVTJWbElIUm9aU0JNYVdObGJuTmxJR1p2Y2lCMGFHVWdjM0JsWTJsbWFXTWdiR0Z1WjNWaFoyVWdaMjkyWlhKdWFXNW5JSEJsY20xcGMzTnBiMjV6SUdGdVpGeHVJQ29nYkdsdGFYUmhkR2x2Ym5NZ2RXNWtaWElnZEdobElFeHBZMlZ1YzJVdVhHNGdLaUE5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMWNiaUFxTDF4dVhHNHZLaXBjYmlBcUlGUm9hWE1nYVhNZ1lTQktZWFpoVTJOeWFYQjBJSEpsYVcxd2JHVnRaVzUwWVhScGIyNGdiMllnVlUxQlVDQW9iM0pwWjJsdVlXd2diR2xqWlc1elpTQmlaV3h2ZHlrc0lHWnliMjFjYmlBcUlIUm9aU0J3ZVhSb2IyNGdhVzF3YkdWdFpXNTBZWFJwYjI0Z1ptOTFibVFnWVhRZ2FIUjBjSE02THk5bmFYUm9kV0l1WTI5dEwyeHRZMmx1Ym1WekwzVnRZWEF1WEc0Z0tseHVJQ29nUUdGMWRHaHZjaUJoYm1SNVkyOWxibVZ1UUdkdmIyZHNaUzVqYjIwZ0tFRnVaSGtnUTI5bGJtVnVLVnh1SUNvdlhHNWNiaThxS2x4dUlDb2dRR3hwWTJWdWMyVmNiaUFxSUVKVFJDQXpMVU5zWVhWelpTQk1hV05sYm5ObFhHNGdLbHh1SUNvZ1EyOXdlWEpwWjJoMElDaGpLU0F5TURFM0xDQk1aV3hoYm1RZ1RXTkpibTVsYzF4dUlDb2dRV3hzSUhKcFoyaDBjeUJ5WlhObGNuWmxaQzVjYmlBcVhHNGdLaUJTWldScGMzUnlhV0oxZEdsdmJpQmhibVFnZFhObElHbHVJSE52ZFhKalpTQmhibVFnWW1sdVlYSjVJR1p2Y20xekxDQjNhWFJvSUc5eUlIZHBkR2h2ZFhSY2JpQXFJRzF2WkdsbWFXTmhkR2x2Yml3Z1lYSmxJSEJsY20xcGRIUmxaQ0J3Y205MmFXUmxaQ0IwYUdGMElIUm9aU0JtYjJ4c2IzZHBibWNnWTI5dVpHbDBhVzl1Y3lCaGNtVWdiV1YwT2x4dUlDcGNiaUFxSUNvZ1VtVmthWE4wY21saWRYUnBiMjV6SUc5bUlITnZkWEpqWlNCamIyUmxJRzExYzNRZ2NtVjBZV2x1SUhSb1pTQmhZbTkyWlNCamIzQjVjbWxuYUhRZ2JtOTBhV05sTENCMGFHbHpYRzRnS2lBZ0lHeHBjM1FnYjJZZ1kyOXVaR2wwYVc5dWN5QmhibVFnZEdobElHWnZiR3h2ZDJsdVp5QmthWE5qYkdGcGJXVnlMbHh1SUNwY2JpQXFJQ29nVW1Wa2FYTjBjbWxpZFhScGIyNXpJR2x1SUdKcGJtRnllU0JtYjNKdElHMTFjM1FnY21Wd2NtOWtkV05sSUhSb1pTQmhZbTkyWlNCamIzQjVjbWxuYUhRZ2JtOTBhV05sTEZ4dUlDb2dJQ0IwYUdseklHeHBjM1FnYjJZZ1kyOXVaR2wwYVc5dWN5QmhibVFnZEdobElHWnZiR3h2ZDJsdVp5QmthWE5qYkdGcGJXVnlJR2x1SUhSb1pTQmtiMk4xYldWdWRHRjBhVzl1WEc0Z0tpQWdJR0Z1WkM5dmNpQnZkR2hsY2lCdFlYUmxjbWxoYkhNZ2NISnZkbWxrWldRZ2QybDBhQ0IwYUdVZ1pHbHpkSEpwWW5WMGFXOXVMbHh1SUNwY2JpQXFJQ29nVG1WcGRHaGxjaUIwYUdVZ2JtRnRaU0J2WmlCMGFHVWdZMjl3ZVhKcFoyaDBJR2h2YkdSbGNpQnViM0lnZEdobElHNWhiV1Z6SUc5bUlHbDBjMXh1SUNvZ0lDQmpiMjUwY21saWRYUnZjbk1nYldGNUlHSmxJSFZ6WldRZ2RHOGdaVzVrYjNKelpTQnZjaUJ3Y205dGIzUmxJSEJ5YjJSMVkzUnpJR1JsY21sMlpXUWdabkp2YlZ4dUlDb2dJQ0IwYUdseklITnZablIzWVhKbElIZHBkR2h2ZFhRZ2MzQmxZMmxtYVdNZ2NISnBiM0lnZDNKcGRIUmxiaUJ3WlhKdGFYTnphVzl1TGx4dUlDcGNiaUFxSUZSSVNWTWdVMDlHVkZkQlVrVWdTVk1nVUZKUFZrbEVSVVFnUWxrZ1ZFaEZJRU5QVUZsU1NVZElWQ0JJVDB4RVJWSlRJRUZPUkNCRFQwNVVVa2xDVlZSUFVsTWdYQ0pCVXlCSlUxd2lYRzRnS2lCQlRrUWdRVTVaSUVWWVVGSkZVMU1nVDFJZ1NVMVFURWxGUkNCWFFWSlNRVTVVU1VWVExDQkpUa05NVlVSSlRrY3NJRUpWVkNCT1QxUWdURWxOU1ZSRlJDQlVUeXdnVkVoRlhHNGdLaUJKVFZCTVNVVkVJRmRCVWxKQlRsUkpSVk1nVDBZZ1RVVlNRMGhCVGxSQlFrbE1TVlJaSUVGT1JDQkdTVlJPUlZOVElFWlBVaUJCSUZCQlVsUkpRMVZNUVZJZ1VGVlNVRTlUUlNCQlVrVmNiaUFxSUVSSlUwTk1RVWxOUlVRdUlFbE9JRTVQSUVWV1JVNVVJRk5JUVV4TUlGUklSU0JEVDFCWlVrbEhTRlFnU0U5TVJFVlNJRTlTSUVOUFRsUlNTVUpWVkU5U1V5QkNSU0JNU1VGQ1RFVmNiaUFxSUVaUFVpQkJUbGtnUkVsU1JVTlVMQ0JKVGtSSlVrVkRWQ3dnU1U1RFNVUkZUbFJCVEN3Z1UxQkZRMGxCVEN3Z1JWaEZUVkJNUVZKWkxDQlBVaUJEVDA1VFJWRlZSVTVVU1VGTVhHNGdLaUJFUVUxQlIwVlRJQ2hKVGtOTVZVUkpUa2NzSUVKVlZDQk9UMVFnVEVsTlNWUkZSQ0JVVHl3Z1VGSlBRMVZTUlUxRlRsUWdUMFlnVTFWQ1UxUkpWRlZVUlNCSFQwOUVVeUJQVWx4dUlDb2dVMFZTVmtsRFJWTTdJRXhQVTFNZ1QwWWdWVk5GTENCRVFWUkJMQ0JQVWlCUVVrOUdTVlJUT3lCUFVpQkNWVk5KVGtWVFV5QkpUbFJGVWxKVlVGUkpUMDRwSUVoUFYwVldSVkpjYmlBcUlFTkJWVk5GUkNCQlRrUWdUMDRnUVU1WklGUklSVTlTV1NCUFJpQk1TVUZDU1V4SlZGa3NJRmRJUlZSSVJWSWdTVTRnUTA5T1ZGSkJRMVFzSUZOVVVrbERWQ0JNU1VGQ1NVeEpWRmtzWEc0Z0tpQlBVaUJVVDFKVUlDaEpUa05NVlVSSlRrY2dUa1ZIVEVsSFJVNURSU0JQVWlCUFZFaEZVbGRKVTBVcElFRlNTVk5KVGtjZ1NVNGdRVTVaSUZkQldTQlBWVlFnVDBZZ1ZFaEZJRlZUUlZ4dUlDb2dUMFlnVkVoSlV5QlRUMFpVVjBGU1JTd2dSVlpGVGlCSlJpQkJSRlpKVTBWRUlFOUdJRlJJUlNCUVQxTlRTVUpKVEVsVVdTQlBSaUJUVlVOSUlFUkJUVUZIUlM1Y2JpQXFMMXh1WEc1cGJYQnZjblFnZTFKaGJtUnZiVVp1ZlNCbWNtOXRJQ2N1TDNWdFlYQW5PMXh1YVcxd2IzSjBJQ29nWVhNZ2RYUnBiSE1nWm5KdmJTQW5MaTkxZEdsc2N5YzdYRzVjYm1WNGNHOXlkQ0IwZVhCbElFaGxZWEFnUFNCdWRXMWlaWEpiWFZ0ZFcxMDdYRzVjYmk4cUtseHVJQ29nSUVOdmJuTjBjblZqZEc5eUlHWnZjaUIwYUdVZ2FHVmhjQ0J2WW1wbFkzUnpMaUJVYUdVZ2FHVmhjSE1nWVhKbElIVnpaV1JjYmlBcUlHWnZjaUJoY0hCeWIzaHBiV0YwWlNCdVpXRnlaWE4wSUc1bGFXZG9ZbTl5SUhObFlYSmphQ3dnYldGcGJuUmhhVzVwYm1jZ1lTQnNhWE4wSUc5bUlIQnZkR1Z1ZEdsaGJGeHVJQ29nYm1WcFoyaGliM0p6SUhOdmNuUmxaQ0JpZVNCMGFHVnBjaUJrYVhOMFlXNWpaUzRnVjJVZ1lXeHpieUJtYkdGbklHbG1JSEJ2ZEdWdWRHbGhiQ0J1WldsbmFHSnZjbk5jYmlBcUlHRnlaU0J1Wlhkc2VTQmhaR1JsWkNCMGJ5QjBhR1VnYkdsemRDQnZjaUJ1YjNRdUlFbHVkR1Z5Ym1Gc2JIa2dkR2hwY3lCcGN5QnpkRzl5WldRZ1lYTmNiaUFxSUdFZ2MybHVaMnhsSUdGeWNtRjVPeUIwYUdVZ1ptbHljM1FnWVhocGN5QmtaWFJsY20xcGJtVnpJSGRvWlhSb1pYSWdkMlVnWVhKbElHeHZiMnRwYm1jZ1lYUWdkR2hsWEc0Z0tpQmhjbkpoZVNCdlppQmpZVzVrYVdSaGRHVWdhVzVrYVdObGN5d2dkR2hsSUdGeWNtRjVJRzltSUdScGMzUmhibU5sY3l3Z2IzSWdkR2hsSUdac1lXY2dZWEp5WVhrZ1ptOXlYRzRnS2lCM2FHVjBhR1Z5SUdWc1pXMWxiblJ6SUdGeVpTQnVaWGNnYjNJZ2JtOTBMaUJGWVdOb0lHOW1JSFJvWlhObElHRnljbUY1Y3lCaGNtVWdiMllnYzJoaGNHVmNiaUFxSUNoZ1lHNVFiMmx1ZEhOZ1lDd2dZR0J6YVhwbFlHQXBYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCdFlXdGxTR1ZoY0NodVVHOXBiblJ6T2lCdWRXMWlaWElzSUhOcGVtVTZJRzUxYldKbGNpazZJRWhsWVhBZ2UxeHVJQ0JqYjI1emRDQnRZV3RsUVhKeVlYbHpJRDBnS0dacGJHeFdZV3gxWlRvZ2JuVnRZbVZ5S1NBOVBpQjdYRzRnSUNBZ2NtVjBkWEp1SUhWMGFXeHpMbVZ0Y0hSNUtHNVFiMmx1ZEhNcExtMWhjQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RYUnBiSE11Wm1sc2JHVmtLSE5wZW1Vc0lHWnBiR3hXWVd4MVpTazdYRzRnSUNBZ2ZTazdYRzRnSUgwN1hHNWNiaUFnWTI5dWMzUWdhR1ZoY0RvZ1NHVmhjQ0E5SUZ0ZE8xeHVJQ0JvWldGd0xuQjFjMmdvYldGclpVRnljbUY1Y3lndE1Ta3BPMXh1SUNCb1pXRndMbkIxYzJnb2JXRnJaVUZ5Y21GNWN5aEpibVpwYm1sMGVTa3BPMXh1SUNCb1pXRndMbkIxYzJnb2JXRnJaVUZ5Y21GNWN5Z3dLU2s3WEc0Z0lISmxkSFZ5YmlCb1pXRndPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFZGxibVZ5WVhSbElHNWZjMkZ0Y0d4bGN5QnRZVzU1SUdsdWRHVm5aWEp6SUdaeWIyMGdNQ0IwYnlCd2IyOXNYM05wZW1VZ2MzVmphQ0IwYUdGMElHNXZYRzRnS2lCcGJuUmxaMlZ5SUdseklITmxiR1ZqZEdWa0lIUjNhV05sTGlCVWFHVWdaSFZ3YkdsallYUnBiMjRnWTI5dWMzUnlZV2x1ZENCcGN5QmhZMmhwWlhabFpDQjJhV0ZjYmlBcUlISmxhbVZqZEdsdmJpQnpZVzF3YkdsdVp5NWNiaUFxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUhKbGFtVmpkR2x2YmxOaGJYQnNaU2hjYmlBZ2JsTmhiWEJzWlhNNklHNTFiV0psY2l4Y2JpQWdjRzl2YkZOcGVtVTZJRzUxYldKbGNpeGNiaUFnY21GdVpHOXRPaUJTWVc1a2IyMUdibHh1S1NCN1hHNGdJR052Ym5OMElISmxjM1ZzZENBOUlIVjBhV3h6TG5wbGNtOXpLRzVUWVcxd2JHVnpLVHRjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnVVMkZ0Y0d4bGN6c2dhU3NyS1NCN1hHNGdJQ0FnYkdWMElISmxhbVZqZEZOaGJYQnNaU0E5SUhSeWRXVTdYRzRnSUNBZ2JHVjBJR29nUFNBd08xeHVJQ0FnSUhkb2FXeGxJQ2h5WldwbFkzUlRZVzF3YkdVcElIdGNiaUFnSUNBZ0lHb2dQU0IxZEdsc2N5NTBZWFZTWVc1a1NXNTBLSEJ2YjJ4VGFYcGxMQ0J5WVc1a2IyMHBPMXh1SUNBZ0lDQWdiR1YwSUdKeWIydGxiaUE5SUdaaGJITmxPMXh1SUNBZ0lDQWdabTl5SUNoc1pYUWdheUE5SURBN0lHc2dQQ0JwT3lCckt5c3BJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tHb2dQVDA5SUhKbGMzVnNkRnRyWFNrZ2UxeHVJQ0FnSUNBZ0lDQWdJR0p5YjJ0bGJpQTlJSFJ5ZFdVN1hHNGdJQ0FnSUNBZ0lDQWdZbkpsWVdzN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNiaUFnSUNBZ0lHbG1JQ2doWW5KdmEyVnVLU0J5WldwbFkzUlRZVzF3YkdVZ1BTQm1ZV3h6WlR0Y2JpQWdJQ0I5WEc0Z0lDQWdjbVZ6ZFd4MFcybGRJRDBnYWp0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnY21WemRXeDBPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGQjFjMmdnWVNCdVpYY2daV3hsYldWdWRDQnZiblJ2SUhSb1pTQm9aV0Z3TGlCVWFHVWdhR1ZoY0NCemRHOXlaWE1nY0c5MFpXNTBhV0ZzSUc1bGFXZG9ZbTl5YzF4dUlDb2dabTl5SUdWaFkyZ2daR0YwWVNCd2IybHVkQzRnVkdobElHQmdjbTkzWUdBZ2NHRnlZVzFsZEdWeUlHUmxkR1Z5YldsdVpYTWdkMmhwWTJnZ1pHRjBZU0J3YjJsdWRDQjNaVnh1SUNvZ1lYSmxJR0ZrWkhKbGMzTnBibWNzSUhSb1pTQmdZSGRsYVdkb2RHQmdJR1JsZEdWeWJXbHVaWE1nZEdobElHUnBjM1JoYm1ObElDaG1iM0lnYUdWaGNDQnpiM0owYVc1bktTeGNiaUFxSUhSb1pTQmdZR2x1WkdWNFlHQWdhWE1nZEdobElHVnNaVzFsYm5RZ2RHOGdZV1JrTENCaGJtUWdkR2hsSUdac1lXY2daR1YwWlhKdGFXNWxjeUIzYUdWMGFHVnlJSFJvYVhOY2JpQXFJR2x6SUhSdklHSmxJR052Ym5OcFpHVnlaV1FnWVNCdVpYY2dZV1JrYVhScGIyNHVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCb1pXRndVSFZ6YUNoY2JpQWdhR1ZoY0RvZ1NHVmhjQ3hjYmlBZ2NtOTNPaUJ1ZFcxaVpYSXNYRzRnSUhkbGFXZG9kRG9nYm5WdFltVnlMRnh1SUNCcGJtUmxlRG9nYm5WdFltVnlMRnh1SUNCbWJHRm5PaUJ1ZFcxaVpYSmNiaWs2SUc1MWJXSmxjaUI3WEc0Z0lISnZkeUE5SUUxaGRHZ3VabXh2YjNJb2NtOTNLVHRjYmlBZ1kyOXVjM1FnYVc1a2FXTmxjeUE5SUdobFlYQmJNRjFiY205M1hUdGNiaUFnWTI5dWMzUWdkMlZwWjJoMGN5QTlJR2hsWVhCYk1WMWJjbTkzWFR0Y2JpQWdMeTlqYjI1emRDQnBjMDVsZHlBOUlHaGxZWEJiTWwxYmNtOTNYVHRjYmx4dUlDQnBaaUFvZDJWcFoyaDBJRDQ5SUhkbGFXZG9kSE5iTUYwcFhHNGdJQ0FnY21WMGRYSnVJREE3WEc1Y2JseHVJQ0F2THlCQ2NtVmhheUJwWmlCM1pTQmhiSEpsWVdSNUlHaGhkbVVnZEdocGN5QmxiR1Z0Wlc1MExseHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdsdVpHbGpaWE11YkdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNCcFppQW9hVzVrWlhnZ1BUMDlJR2x1WkdsalpYTmJhVjBwWEc0Z0lDQWdJQ0J5WlhSMWNtNGdNRHRjYmlBZ2ZWeHVYRzRnSUhKbGRIVnliaUIxYm1Ob1pXTnJaV1JJWldGd1VIVnphQ2hvWldGd0xDQnliM2NzSUhkbGFXZG9kQ3dnYVc1a1pYZ3NJR1pzWVdjcE8xeHVmVnh1WEc0dktpcGNiaUFxSUZCMWMyZ2dZU0J1WlhjZ1pXeGxiV1Z1ZENCdmJuUnZJSFJvWlNCb1pXRndMaUJVYUdVZ2FHVmhjQ0J6ZEc5eVpYTWdjRzkwWlc1MGFXRnNJRzVsYVdkb1ltOXljMXh1SUNvZ1ptOXlJR1ZoWTJnZ1pHRjBZU0J3YjJsdWRDNGdWR2hsSUdCZ2NtOTNZR0FnY0dGeVlXMWxkR1Z5SUdSbGRHVnliV2x1WlhNZ2QyaHBZMmdnWkdGMFlTQndiMmx1ZENCM1pWeHVJQ29nWVhKbElHRmtaSEpsYzNOcGJtY3NJSFJvWlNCZ1lIZGxhV2RvZEdCZ0lHUmxkR1Z5YldsdVpYTWdkR2hsSUdScGMzUmhibU5sSUNobWIzSWdhR1ZoY0NCemIzSjBhVzVuS1N4Y2JpQXFJSFJvWlNCZ1lHbHVaR1Y0WUdBZ2FYTWdkR2hsSUdWc1pXMWxiblFnZEc4Z1lXUmtMQ0JoYm1RZ2RHaGxJR1pzWVdjZ1pHVjBaWEp0YVc1bGN5QjNhR1YwYUdWeUlIUm9hWE5jYmlBcUlHbHpJSFJ2SUdKbElHTnZibk5wWkdWeVpXUWdZU0J1WlhjZ1lXUmthWFJwYjI0dVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIxYm1Ob1pXTnJaV1JJWldGd1VIVnphQ2hjYmlBZ2FHVmhjRG9nU0dWaGNDeGNiaUFnY205M09pQnVkVzFpWlhJc1hHNGdJSGRsYVdkb2REb2diblZ0WW1WeUxGeHVJQ0JwYm1SbGVEb2diblZ0WW1WeUxGeHVJQ0JtYkdGbk9pQnVkVzFpWlhKY2JpazZJRzUxYldKbGNpQjdYRzRnSUdOdmJuTjBJR2x1WkdsalpYTWdQU0JvWldGd1d6QmRXM0p2ZDEwN1hHNGdJR052Ym5OMElIZGxhV2RvZEhNZ1BTQm9aV0Z3V3pGZFczSnZkMTA3WEc0Z0lHTnZibk4wSUdselRtVjNJRDBnYUdWaGNGc3lYVnR5YjNkZE8xeHVYRzRnSUdsbUlDaDNaV2xuYUhRZ1BqMGdkMlZwWjJoMGMxc3dYU2xjYmlBZ0lDQnlaWFIxY200Z01EdGNibHh1WEc0Z0lDOHZJRWx1YzJWeWRDQjJZV3dnWVhRZ2NHOXphWFJwYjI0Z2VtVnliMXh1SUNCM1pXbG5hSFJ6V3pCZElEMGdkMlZwWjJoME8xeHVJQ0JwYm1ScFkyVnpXekJkSUQwZ2FXNWtaWGc3WEc0Z0lHbHpUbVYzV3pCZElEMGdabXhoWnp0Y2JseHVJQ0F2THlCRVpYTmpaVzVrSUhSb1pTQm9aV0Z3TENCemQyRndjR2x1WnlCMllXeDFaWE1nZFc1MGFXd2dkR2hsSUcxaGVDQm9aV0Z3SUdOeWFYUmxjbWx2YmlCcGN5QnRaWFJjYmlBZ2JHVjBJR2tnUFNBd08xeHVJQ0JzWlhRZ2FWTjNZWEFnUFNBd08xeHVJQ0IzYUdsc1pTQW9kSEoxWlNrZ2UxeHVJQ0FnSUdOdmJuTjBJR2xqTVNBOUlESWdLaUJwSUNzZ01UdGNiaUFnSUNCamIyNXpkQ0JwWXpJZ1BTQnBZekVnS3lBeE8xeHVYRzRnSUNBZ1kyOXVjM1FnYUdWaGNGTm9ZWEJsTWlBOUlHaGxZWEJiTUYxYk1GMHViR1Z1WjNSb08xeHVJQ0FnSUdsbUlDaHBZekVnUGowZ2FHVmhjRk5vWVhCbE1pa2dlMXh1SUNBZ0lDQWdZbkpsWVdzN1hHNGdJQ0FnZlNCbGJITmxJR2xtSUNocFl6SWdQajBnYUdWaGNGTm9ZWEJsTWlrZ2UxeHVJQ0FnSUNBZ2FXWWdLSGRsYVdkb2RITmJhV014WFNBK0lIZGxhV2RvZENsY2JpQWdJQ0FnSUNBZ2FWTjNZWEFnUFNCcFl6RTdYRzRnSUNBZ0lDQmxiSE5sWEc0Z0lDQWdJQ0FnSUdKeVpXRnJPMXh1SUNBZ0lIMGdaV3h6WlNCcFppQW9kMlZwWjJoMGMxdHBZekZkSUQ0OUlIZGxhV2RvZEhOYmFXTXlYU2tnZTF4dUlDQWdJQ0FnYVdZZ0tIZGxhV2RvZENBOElIZGxhV2RvZEhOYmFXTXhYU2xjYmlBZ0lDQWdJQ0FnYVZOM1lYQWdQU0JwWXpFN1hHNGdJQ0FnSUNCbGJITmxYRzRnSUNBZ0lDQWdJR0p5WldGck8xeHVJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0JwWmlBb2QyVnBaMmgwSUR3Z2QyVnBaMmgwYzF0cFl6SmRLVnh1SUNBZ0lDQWdJQ0JwVTNkaGNDQTlJR2xqTWp0Y2JpQWdJQ0FnSUdWc2MyVmNiaUFnSUNBZ0lDQWdZbkpsWVdzN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnZDJWcFoyaDBjMXRwWFNBOUlIZGxhV2RvZEhOYmFWTjNZWEJkTzF4dUlDQWdJR2x1WkdsalpYTmJhVjBnUFNCcGJtUnBZMlZ6VzJsVGQyRndYVHRjYmlBZ0lDQnBjMDVsZDF0cFhTQTlJR2x6VG1WM1cybFRkMkZ3WFR0Y2JseHVJQ0FnSUdrZ1BTQnBVM2RoY0R0Y2JpQWdmVnh1WEc0Z0lIZGxhV2RvZEhOYmFWMGdQU0IzWldsbmFIUTdYRzRnSUdsdVpHbGpaWE5iYVYwZ1BTQnBibVJsZUR0Y2JpQWdhWE5PWlhkYmFWMGdQU0JtYkdGbk8xeHVJQ0J5WlhSMWNtNGdNVHRjYm4xY2JseHVMeW9xWEc0Z0tpQkNkV2xzWkNCaElHaGxZWEFnYjJZZ1kyRnVaR2xrWVhSbElHNWxhV2RvWW05eWN5Qm1iM0lnYm1WaGNtVnpkQ0J1WldsbmFHSnZjaUJrWlhOalpXNTBMaUJHYjNKY2JpQXFJR1ZoWTJnZ2RtVnlkR1Y0SUhSb1pTQmpZVzVrYVdSaGRHVWdibVZwWjJoaWIzSnpJR0Z5WlNCaGJua2dZM1Z5Y21WdWRDQnVaV2xuYUdKdmNuTXNJR0Z1WkNCaGJubGNiaUFxSUhabGNuUnBZMlZ6SUhSb1lYUWdhR0YyWlNCMGFHVWdkbVZ5ZEdWNElHRnpJRzl1WlNCdlppQjBhR1ZwY2lCdVpXRnlaWE4wSUc1bGFXZG9ZbTl5Y3k1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR0oxYVd4a1EyRnVaR2xrWVhSbGN5aGNiaUFnWTNWeWNtVnVkRWR5WVhCb09pQklaV0Z3TEZ4dUlDQnVWbVZ5ZEdsalpYTTZJRzUxYldKbGNpeGNiaUFnYms1bGFXZG9ZbTl5Y3pvZ2JuVnRZbVZ5TEZ4dUlDQnRZWGhEWVc1a2FXUmhkR1Z6T2lCdWRXMWlaWElzWEc0Z0lISmhibVJ2YlRvZ1VtRnVaRzl0Um01Y2Jpa2dlMXh1SUNCamIyNXpkQ0JqWVc1a2FXUmhkR1ZPWldsbmFHSnZjbk1nUFNCdFlXdGxTR1ZoY0NodVZtVnlkR2xqWlhNc0lHMWhlRU5oYm1ScFpHRjBaWE1wTzF4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJRzVXWlhKMGFXTmxjenNnYVNzcktTQjdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJREE3SUdvZ1BDQnVUbVZwWjJoaWIzSnpPeUJxS3lzcElIdGNiaUFnSUNBZ0lHbG1JQ2hqZFhKeVpXNTBSM0poY0doYk1GMWJhVjFiYWwwZ1BDQXdLVnh1SUNBZ0lDQWdJQ0JqYjI1MGFXNTFaVHRjYmx4dUlDQWdJQ0FnWTI5dWMzUWdhV1I0SUQwZ1kzVnljbVZ1ZEVkeVlYQm9XekJkVzJsZFcycGRPMXh1SUNBZ0lDQWdZMjl1YzNRZ2FYTnVJRDBnWTNWeWNtVnVkRWR5WVhCb1d6SmRXMmxkVzJwZE8xeHVJQ0FnSUNBZ1kyOXVjM1FnWkNBOUlIVjBhV3h6TG5SaGRWSmhibVFvY21GdVpHOXRLVHRjYmlBZ0lDQWdJR2hsWVhCUWRYTm9LR05oYm1ScFpHRjBaVTVsYVdkb1ltOXljeXdnYVN3Z1pDd2dhV1I0TENCcGMyNHBPMXh1SUNBZ0lDQWdhR1ZoY0ZCMWMyZ29ZMkZ1Wkdsa1lYUmxUbVZwWjJoaWIzSnpMQ0JwWkhnc0lHUXNJR2tzSUdsemJpazdYRzRnSUNBZ0lDQmpkWEp5Wlc1MFIzSmhjR2hiTWwxYmFWMWJhbDBnUFNBd08xeHVJQ0FnSUgxY2JpQWdmVnh1SUNCeVpYUjFjbTRnWTJGdVpHbGtZWFJsVG1WcFoyaGliM0p6TzF4dWZWeHVYRzR2S2lwY2JpQXFJRWRwZG1WdUlHRnVJR0Z5Y21GNUlHOW1JR2hsWVhCeklDaHZaaUJwYm1ScFkyVnpJR0Z1WkNCM1pXbG5hSFJ6S1N3Z2RXNXdZV05ySUhSb1pTQm9aV0Z3WEc0Z0tpQnZkWFFnZEc4Z1oybDJaU0JoYm1RZ1lYSnlZWGtnYjJZZ2MyOXlkR1ZrSUd4cGMzUnpJRzltSUdsdVpHbGpaWE1nWVc1a0lIZGxhV2RvZEhNZ1lua2dhVzVqY21WaGMybHVaMXh1SUNvZ2QyVnBaMmgwTGlCVWFHbHpJR2x6SUdWbVptVmpkR2wyWld4NUlHcDFjM1FnZEdobElITmxZMjl1WkNCb1lXeG1JRzltSUdobFlYQWdjMjl5ZENBb2RHaGxJR1pwY25OMFhHNGdLaUJvWVd4bUlHNXZkQ0JpWldsdVp5QnlaWEYxYVhKbFpDQnphVzVqWlNCM1pTQmhiSEpsWVdSNUlHaGhkbVVnZEdobElHUmhkR0VnYVc0Z1lTQm9aV0Z3S1M1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR1JsYUdWaGNGTnZjblFvYUdWaGNEb2dTR1ZoY0NrZ2UxeHVJQ0JqYjI1emRDQnBibVJwWTJWeklEMGdhR1ZoY0Zzd1hUdGNiaUFnWTI5dWMzUWdkMlZwWjJoMGN5QTlJR2hsWVhCYk1WMDdYRzVjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnBibVJwWTJWekxteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdZMjl1YzNRZ2FXNWtTR1ZoY0NBOUlHbHVaR2xqWlhOYmFWMDdYRzRnSUNBZ1kyOXVjM1FnWkdsemRFaGxZWEFnUFNCM1pXbG5hSFJ6VzJsZE8xeHVYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJREE3SUdvZ1BDQnBibVJJWldGd0xteGxibWQwYUNBdElERTdJR29yS3lrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnYVc1a1NHVmhjRWx1WkdWNElEMGdhVzVrU0dWaGNDNXNaVzVuZEdnZ0xTQnFJQzBnTVR0Y2JpQWdJQ0FnSUdOdmJuTjBJR1JwYzNSSVpXRndTVzVrWlhnZ1BTQmthWE4wU0dWaGNDNXNaVzVuZEdnZ0xTQnFJQzBnTVR0Y2JseHVJQ0FnSUNBZ1kyOXVjM1FnZEdWdGNERWdQU0JwYm1SSVpXRndXekJkTzF4dUlDQWdJQ0FnYVc1a1NHVmhjRnN3WFNBOUlHbHVaRWhsWVhCYmFXNWtTR1ZoY0VsdVpHVjRYVHRjYmlBZ0lDQWdJR2x1WkVobFlYQmJhVzVrU0dWaGNFbHVaR1Y0WFNBOUlIUmxiWEF4TzF4dVhHNGdJQ0FnSUNCamIyNXpkQ0IwWlcxd01pQTlJR1JwYzNSSVpXRndXekJkTzF4dUlDQWdJQ0FnWkdsemRFaGxZWEJiTUYwZ1BTQmthWE4wU0dWaGNGdGthWE4wU0dWaGNFbHVaR1Y0WFR0Y2JpQWdJQ0FnSUdScGMzUklaV0Z3VzJScGMzUklaV0Z3U1c1a1pYaGRJRDBnZEdWdGNESTdYRzVjYmlBZ0lDQWdJSE5wWm5SRWIzZHVLR1JwYzNSSVpXRndMQ0JwYm1SSVpXRndMQ0JrYVhOMFNHVmhjRWx1WkdWNExDQXdLVHRjYmlBZ0lDQjlYRzRnSUgxY2JpQWdjbVYwZFhKdUlIdHBibVJwWTJWekxDQjNaV2xuYUhSemZUdGNibjFjYmx4dUx5b3FYRzRnS2lCU1pYTjBiM0psSUhSb1pTQm9aV0Z3SUhCeWIzQmxjblI1SUdadmNpQmhJR2hsWVhBZ2QybDBhQ0JoYmlCdmRYUWdiMllnY0d4aFkyVWdaV3hsYldWdWRGeHVJQ29nWVhRZ2NHOXphWFJwYjI0Z1lHQmxiSFJnWUM0Z1ZHaHBjeUIzYjNKcmN5QjNhWFJvSUdFZ2FHVmhjQ0J3WVdseUlIZG9aWEpsSUdobFlYQXhJR05oY25KcFpYTmNiaUFxSUhSb1pTQjNaV2xuYUhSeklHRnVaQ0JvWldGd01pQm9iMnhrY3lCMGFHVWdZMjl5Y21WemNHOXVaR2x1WnlCbGJHVnRaVzUwY3k1Y2JpQXFMMXh1Wm5WdVkzUnBiMjRnYzJsbWRFUnZkMjRvWEc0Z0lHaGxZWEF4T2lCdWRXMWlaWEpiWFN4Y2JpQWdhR1ZoY0RJNklHNTFiV0psY2x0ZExGeHVJQ0JqWldsc2FXNW5PaUJ1ZFcxaVpYSXNYRzRnSUdWc2REb2diblZ0WW1WeVhHNHBJSHRjYmlBZ2QyaHBiR1VnS0dWc2RDQXFJRElnS3lBeElEd2dZMlZwYkdsdVp5a2dlMXh1SUNBZ0lHTnZibk4wSUd4bFpuUkRhR2xzWkNBOUlHVnNkQ0FxSURJZ0t5QXhPMXh1SUNBZ0lHTnZibk4wSUhKcFoyaDBRMmhwYkdRZ1BTQnNaV1owUTJocGJHUWdLeUF4TzF4dUlDQWdJR3hsZENCemQyRndJRDBnWld4ME8xeHVYRzRnSUNBZ2FXWWdLR2hsWVhBeFczTjNZWEJkSUR3Z2FHVmhjREZiYkdWbWRFTm9hV3hrWFNsY2JpQWdJQ0FnSUhOM1lYQWdQU0JzWldaMFEyaHBiR1E3WEc1Y2JpQWdJQ0JwWmlBb2NtbG5hSFJEYUdsc1pDQThJR05sYVd4cGJtY2dKaVlnYUdWaGNERmJjM2RoY0YwZ1BDQm9aV0Z3TVZ0eWFXZG9kRU5vYVd4a1hTbGNiaUFnSUNBZ0lITjNZWEFnUFNCeWFXZG9kRU5vYVd4a08xeHVYRzVjYmlBZ0lDQnBaaUFvYzNkaGNDQTlQVDBnWld4MEtTQjdYRzRnSUNBZ0lDQmljbVZoYXp0Y2JpQWdJQ0I5SUdWc2MyVWdlMXh1SUNBZ0lDQWdZMjl1YzNRZ2RHVnRjREVnUFNCb1pXRndNVnRsYkhSZE8xeHVJQ0FnSUNBZ2FHVmhjREZiWld4MFhTQTlJR2hsWVhBeFczTjNZWEJkTzF4dUlDQWdJQ0FnYUdWaGNERmJjM2RoY0YwZ1BTQjBaVzF3TVR0Y2JseHVJQ0FnSUNBZ1kyOXVjM1FnZEdWdGNESWdQU0JvWldGd01sdGxiSFJkTzF4dUlDQWdJQ0FnYUdWaGNESmJaV3gwWFNBOUlHaGxZWEF5VzNOM1lYQmRPMXh1SUNBZ0lDQWdhR1ZoY0RKYmMzZGhjRjBnUFNCMFpXMXdNanRjYmlBZ0lDQWdJR1ZzZENBOUlITjNZWEE3WEc0Z0lDQWdmVnh1SUNCOVhHNTlYRzVjYmk4cUtseHVJQ29nVTJWaGNtTm9JSFJvWlNCb1pXRndJR1p2Y2lCMGFHVWdjMjFoYkd4bGMzUWdaV3hsYldWdWRDQjBhR0YwSUdseklITjBhV3hzSUdac1lXZG5aV1F1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnpiV0ZzYkdWemRFWnNZV2RuWldRb2FHVmhjRG9nU0dWaGNDd2djbTkzT2lCdWRXMWlaWElwSUh0Y2JpQWdZMjl1YzNRZ2FXNWtJRDBnYUdWaGNGc3dYVnR5YjNkZE8xeHVJQ0JqYjI1emRDQmthWE4wSUQwZ2FHVmhjRnN4WFZ0eWIzZGRPMXh1SUNCamIyNXpkQ0JtYkdGbklEMGdhR1ZoY0ZzeVhWdHliM2RkTzF4dVhHNGdJR3hsZENCdGFXNUVhWE4wSUQwZ1NXNW1hVzVwZEhrN1hHNGdJR3hsZENCeVpYTjFiSFJKYm1SbGVDQTlJQzB4TzF4dVhHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRDRnYVc1a0xteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdhV1lnS0dac1lXZGJhVjBnUFQwOUlERWdKaVlnWkdsemRGdHBYU0E4SUcxcGJrUnBjM1FwSUh0Y2JpQWdJQ0FnSUcxcGJrUnBjM1FnUFNCa2FYTjBXMmxkTzF4dUlDQWdJQ0FnY21WemRXeDBTVzVrWlhnZ1BTQnBPMXh1SUNBZ0lIMWNiaUFnZlZ4dVhHNGdJR2xtSUNoeVpYTjFiSFJKYm1SbGVDQStQU0F3S1NCN1hHNGdJQ0FnWm14aFoxdHlaWE4xYkhSSmJtUmxlRjBnUFNBd08xeHVJQ0FnSUhKbGRIVnliaUJOWVhSb0xtWnNiMjl5S0dsdVpGdHlaWE4xYkhSSmJtUmxlRjBwTzF4dUlDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUhKbGRIVnliaUF0TVR0Y2JpQWdmVnh1ZlZ4dUlsMTkiLCIvKipcbiAqIEBsaWNlbnNlXG4gKlxuICogQ29weXJpZ2h0IDIwMTkgR29vZ2xlIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqL1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscyc7XG4vKipcbiAqIEludGVybmFsIDItZGltZW5zaW9uYWwgc3BhcnNlIG1hdHJpeCBjbGFzc1xuICovXG5leHBvcnQgY2xhc3MgU3BhcnNlTWF0cml4IHtcbiAgICBlbnRyaWVzID0gbmV3IE1hcCgpO1xuICAgIG5Sb3dzID0gMDtcbiAgICBuQ29scyA9IDA7XG4gICAgY29uc3RydWN0b3Iocm93cywgY29scywgdmFsdWVzLCBkaW1zKSB7XG4gICAgICAgIGlmIChyb3dzLmxlbmd0aCAhPT0gY29scy5sZW5ndGggfHwgcm93cy5sZW5ndGggIT09IHZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigncm93cywgY29scyBhbmQgdmFsdWVzIGFycmF5cyBtdXN0IGFsbCBoYXZlIHRoZSBzYW1lIGxlbmd0aCcpO1xuICAgICAgICB9XG4gICAgICAgIC8vIFRPRE86IEFzc2VydCB0aGF0IGRpbXMgYXJlIGxlZ2l0LlxuICAgICAgICB0aGlzLm5Sb3dzID0gZGltc1swXTtcbiAgICAgICAgdGhpcy5uQ29scyA9IGRpbXNbMV07XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCByb3cgPSByb3dzW2ldO1xuICAgICAgICAgICAgY29uc3QgY29sID0gY29sc1tpXTtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tEaW1zKHJvdywgY29sKTtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IHRoaXMubWFrZUtleShyb3csIGNvbCk7XG4gICAgICAgICAgICB0aGlzLmVudHJpZXMuc2V0KGtleSwgeyB2YWx1ZTogdmFsdWVzW2ldLCByb3csIGNvbCB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBtYWtlS2V5KHJvdywgY29sKSB7XG4gICAgICAgIHJldHVybiBgJHtyb3d9OiR7Y29sfWA7XG4gICAgfVxuICAgIGNoZWNrRGltcyhyb3csIGNvbCkge1xuICAgICAgICBjb25zdCB3aXRoaW5Cb3VuZHMgPSByb3cgPCB0aGlzLm5Sb3dzICYmIGNvbCA8IHRoaXMubkNvbHM7XG4gICAgICAgIGlmICghd2l0aGluQm91bmRzKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyb3cgYW5kL29yIGNvbCBzcGVjaWZpZWQgb3V0c2lkZSBvZiBtYXRyaXggZGltZW5zaW9ucycpO1xuICAgIH1cbiAgICBzZXQocm93LCBjb2wsIHZhbHVlKSB7XG4gICAgICAgIHRoaXMuY2hlY2tEaW1zKHJvdywgY29sKTtcbiAgICAgICAgY29uc3Qga2V5ID0gdGhpcy5tYWtlS2V5KHJvdywgY29sKTtcbiAgICAgICAgaWYgKCF0aGlzLmVudHJpZXMuaGFzKGtleSkpXG4gICAgICAgICAgICB0aGlzLmVudHJpZXMuc2V0KGtleSwgeyB2YWx1ZSwgcm93LCBjb2wgfSk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHRoaXMuZW50cmllcy5nZXQoa2V5KS52YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgICBnZXQocm93LCBjb2wsIGRlZmF1bHRWYWx1ZSA9IDApIHtcbiAgICAgICAgLy90aGlzLmNoZWNrRGltcyhyb3csIGNvbCk7XG4gICAgICAgIGNvbnN0IGtleSA9IHRoaXMubWFrZUtleShyb3csIGNvbCk7XG4gICAgICAgIGlmICh0aGlzLmVudHJpZXMuaGFzKGtleSkpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5lbnRyaWVzLmdldChrZXkpLnZhbHVlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICAgIH1cbiAgICBnZXRBbGwob3JkZXJlZCA9IHRydWUpIHtcbiAgICAgICAgY29uc3Qgcm93Q29sVmFsdWVzID0gbmV3IEFycmF5KHRoaXMuZW50cmllcy5zaXplKS5maWxsKG51bGwpO1xuICAgICAgICBsZXQgaSA9IDA7XG4gICAgICAgIHRoaXMuZW50cmllcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgcm93Q29sVmFsdWVzW2krK10gPSB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChvcmRlcmVkKSB7XG4gICAgICAgICAgICAvLyBPcmRlcmluZyB0aGUgcmVzdWx0IGlzbid0IHJlcXVpcmVkIGZvciBwcm9jZXNzaW5nIGJ1dCBpdCBkb2VzIG1ha2UgaXQgZWFzaWVyIHRvIHdyaXRlIHRlc3RzXG4gICAgICAgICAgICByb3dDb2xWYWx1ZXMuc29ydCgoYSwgYikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChhLnJvdyA9PT0gYi5yb3cpXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBhLmNvbCAtIGIuY29sO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEucm93IC0gYi5yb3c7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcm93Q29sVmFsdWVzO1xuICAgIH1cbiAgICBnZXREaW1zKCkge1xuICAgICAgICByZXR1cm4gW3RoaXMublJvd3MsIHRoaXMubkNvbHNdO1xuICAgIH1cbiAgICBnZXRSb3dzKCkge1xuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmVudHJpZXMsIChbX2tleSwgdmFsdWVdKSA9PiB2YWx1ZS5yb3cpO1xuICAgICAgICAvLyByZXR1cm4gdGhpcy5yb3dzIGFzIHVua25vd24gYXMgbnVtYmVyW107XG4gICAgfVxuICAgIGdldENvbHMoKSB7XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZW50cmllcywgKFtfa2V5LCB2YWx1ZV0pID0+IHZhbHVlLmNvbCk7XG4gICAgICAgIC8vIHJldHVybiB0aGlzLmNvbHMgYXMgdW5rbm93biBhcyBudW1iZXJbXTtcbiAgICB9XG4gICAgZ2V0VmFsdWVzKCkge1xuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmVudHJpZXMsIChbX2tleSwgdmFsdWVdKSA9PiB2YWx1ZS52YWx1ZSk7XG4gICAgICAgIC8vcmV0dXJuIHRoaXMudmFsdWVzIGFzIHVua25vd24gYXMgbnVtYmVyW107XG4gICAgfVxuICAgIGZvckVhY2goZm4pIHtcbiAgICAgICAgdGhpcy5lbnRyaWVzLmZvckVhY2goKHZhbHVlKSA9PiBmbih2YWx1ZS52YWx1ZSwgdmFsdWUucm93LCB2YWx1ZS5jb2wpKTtcbiAgICB9XG4gICAgbWFwKGZuKSB7XG4gICAgICAgIGNvbnN0IHZhbHMgPSBuZXcgRmxvYXQzMkFycmF5KHRoaXMuZW50cmllcy5zaXplKTtcbiAgICAgICAgbGV0IGkgPSAwO1xuICAgICAgICB0aGlzLmVudHJpZXMuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHZhbHNbaSsrXSA9IGZuKHZhbHVlLnZhbHVlLCB2YWx1ZS5yb3csIHZhbHVlLmNvbCk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBkaW1zID0gW3RoaXMublJvd3MsIHRoaXMubkNvbHNdO1xuICAgICAgICByZXR1cm4gbmV3IFNwYXJzZU1hdHJpeCh0aGlzLmdldFJvd3MoKSwgdGhpcy5nZXRDb2xzKCksIHZhbHMsIGRpbXMpO1xuICAgIH1cbiAgICB0b0FycmF5KCkge1xuICAgICAgICBjb25zdCByb3dzID0gdXRpbHMuZW1wdHkodGhpcy5uUm93cyk7XG4gICAgICAgIGNvbnN0IG91dHB1dCA9IHJvd3MubWFwKCgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB1dGlscy56ZXJvcyh0aGlzLm5Db2xzKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZW50cmllcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgb3V0cHV0W3ZhbHVlLnJvd11bdmFsdWUuY29sXSA9IHZhbHVlLnZhbHVlO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIG91dHB1dDtcbiAgICB9XG59XG4vKipcbiAqIFRyYW5zcG9zZSBhIHNwYXJzZSBtYXRyaXhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zcG9zZShtYXRyaXgpIHtcbiAgICBjb25zdCBvbGRSb3dzID0gbWF0cml4LmdldFJvd3MoKTtcbiAgICBjb25zdCBvbGRDb2xzID0gbWF0cml4LmdldENvbHMoKTtcbiAgICBjb25zdCBvbGRWYWxzID0gbWF0cml4LmdldFZhbHVlcygpO1xuICAgIGNvbnN0IG1hdGxlbiA9IG9sZENvbHMubGVuZ3RoO1xuICAgIGNvbnN0IGNvbHMgPSBuZXcgSW50MzJBcnJheShtYXRsZW4pO1xuICAgIGNvbnN0IHJvd3MgPSBuZXcgSW50MzJBcnJheShtYXRsZW4pO1xuICAgIGNvbnN0IHZhbHMgPSBuZXcgRmxvYXQzMkFycmF5KG1hdGxlbik7XG4gICAgY29scy5zZXQob2xkUm93cyk7XG4gICAgcm93cy5zZXQob2xkQ29scyk7XG4gICAgdmFscy5zZXQob2xkVmFscyk7XG4gICAgY29uc3QgZGltcyA9IFttYXRyaXgubkNvbHMsIG1hdHJpeC5uUm93c107XG4gICAgcmV0dXJuIG5ldyBTcGFyc2VNYXRyaXgocm93cywgY29scywgdmFscywgZGltcyk7XG59XG4vKipcbiAqIENvbnN0cnVjdCBhIHNwYXJzZSBpZGVudGl0eSBtYXRyaXhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlkZW50aXR5KHNpemUpIHtcbiAgICBjb25zdCBbcm93c10gPSBzaXplO1xuICAgIGNvbnN0IG1hdHJpeCA9IG5ldyBTcGFyc2VNYXRyaXgoW10sIFtdLCBbXSwgc2l6ZSk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3dzOyBpKyspXG4gICAgICAgIG1hdHJpeC5zZXQoaSwgaSwgMSk7XG4gICAgcmV0dXJuIG1hdHJpeDtcbn1cbi8qKlxuICogRWxlbWVudC13aXNlIG11bHRpcGxpY2F0aW9uIG9mIHR3byBtYXRyaWNlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcGFpcndpc2VNdWx0aXBseShhLCBiKSB7XG4gICAgcmV0dXJuIGVsZW1lbnRXaXNlKGEsIGIsICh4LCB5KSA9PiB4ICogeSk7XG59XG4vKipcbiAqIEVsZW1lbnQtd2lzZSBhZGRpdGlvbiBvZiB0d28gbWF0cmljZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFkZChhLCBiKSB7XG4gICAgcmV0dXJuIGVsZW1lbnRXaXNlKGEsIGIsICh4LCB5KSA9PiB4ICsgeSk7XG59XG4vKipcbiAqIEVsZW1lbnQtd2lzZSBzdWJ0cmFjdGlvbiBvZiB0d28gbWF0cmljZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHN1YnRyYWN0KGEsIGIpIHtcbiAgICByZXR1cm4gZWxlbWVudFdpc2UoYSwgYiwgKHgsIHkpID0+IHggLSB5KTtcbn1cbi8qKlxuICogRWxlbWVudC13aXNlIG1heGltdW0gb2YgdHdvIG1hdHJpY2VzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXhpbXVtKGEsIGIpIHtcbiAgICByZXR1cm4gZWxlbWVudFdpc2UoYSwgYiwgKHgsIHkpID0+ICh4ID4geSA/IHggOiB5KSk7XG59XG4vKipcbiAqIFNjYWxhciBtdWx0aXBsaWNhdGlvbiBvZiB0d28gbWF0cmljZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG11bHRpcGx5U2NhbGFyKGEsIHNjYWxhcikge1xuICAgIHJldHVybiBhLm1hcCgodmFsdWUpID0+IHtcbiAgICAgICAgcmV0dXJuIHZhbHVlICogc2NhbGFyO1xuICAgIH0pO1xufVxuLyoqXG4gKiBSZXR1cm5zIGEgbmV3IG1hdHJpeCB3aXRoIHplcm8gZW50cmllcyByZW1vdmVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZWxpbWluYXRlWmVyb3MobSkge1xuICAgIGNvbnN0IHplcm9JbmRpY2VzID0gbmV3IFNldCgpO1xuICAgIGNvbnN0IHZhbHVlcyA9IG0uZ2V0VmFsdWVzKCk7XG4gICAgY29uc3Qgcm93cyA9IG0uZ2V0Um93cygpO1xuICAgIGNvbnN0IGNvbHMgPSBtLmdldENvbHMoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbHVlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAodmFsdWVzW2ldID09PSAwKVxuICAgICAgICAgICAgemVyb0luZGljZXMuYWRkKGkpO1xuICAgIH1cbiAgICBjb25zdCByZW1vdmVCeVplcm9JbmRleCA9IChfLCBpbmRleCkgPT4gIXplcm9JbmRpY2VzLmhhcyhpbmRleCk7XG4gICAgY29uc3QgbmV4dFZhbHVlcyA9IHZhbHVlcy5maWx0ZXIocmVtb3ZlQnlaZXJvSW5kZXgpO1xuICAgIGNvbnN0IG5leHRSb3dzID0gcm93cy5maWx0ZXIocmVtb3ZlQnlaZXJvSW5kZXgpO1xuICAgIGNvbnN0IG5leHRDb2xzID0gY29scy5maWx0ZXIocmVtb3ZlQnlaZXJvSW5kZXgpO1xuICAgIHJldHVybiBuZXcgU3BhcnNlTWF0cml4KG5leHRSb3dzLCBuZXh0Q29scywgbmV4dFZhbHVlcywgbS5nZXREaW1zKCkpO1xufVxuLyoqXG4gKiBOb3JtYWxpemF0aW9uIG9mIGEgc3BhcnNlIG1hdHJpeC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbGl6ZShtLCBub3JtVHlwZSA9IFwibDJcIiAvKiBOb3JtVHlwZS5sMiAqLykge1xuICAgIGNvbnN0IG5vcm1GbiA9IG5vcm1GbnNbbm9ybVR5cGVdO1xuICAgIGNvbnN0IGNvbHNCeVJvdyA9IG5ldyBNYXAoKTtcbiAgICBtLmZvckVhY2goKF8sIHJvdywgY29sKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbHMgPSBjb2xzQnlSb3cuZ2V0KHJvdykgfHwgW107XG4gICAgICAgIGNvbHMucHVzaChjb2wpO1xuICAgICAgICBjb2xzQnlSb3cuc2V0KHJvdywgY29scyk7XG4gICAgfSk7XG4gICAgY29uc3QgbmV4dE1hdHJpeCA9IG5ldyBTcGFyc2VNYXRyaXgoW10sIFtdLCBbXSwgbS5nZXREaW1zKCkpO1xuICAgIGZvciAoY29uc3Qgcm93IG9mIGNvbHNCeVJvdy5rZXlzKCkpIHtcbiAgICAgICAgY29uc3QgY29scyA9IGNvbHNCeVJvdy5nZXQocm93KS5zb3J0KCk7XG4gICAgICAgIGNvbnN0IHZhbHMgPSBjb2xzLm1hcCgoY29sKSA9PiBtLmdldChyb3csIGNvbCkpO1xuICAgICAgICBjb25zdCBub3JtID0gbm9ybUZuKHZhbHMpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5vcm0ubGVuZ3RoOyBpKyspXG4gICAgICAgICAgICBuZXh0TWF0cml4LnNldChyb3csIGNvbHNbaV0sIG5vcm1baV0pO1xuICAgIH1cbiAgICByZXR1cm4gbmV4dE1hdHJpeDtcbn1cbmNvbnN0IG5vcm1GbnMgPSB7XG4gICAgW1wibWF4XCIgLyogTm9ybVR5cGUubWF4ICovXTogKHhzKSA9PiB7XG4gICAgICAgIGxldCBtYXggPSAtSW5maW5pdHk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgeHMubGVuZ3RoOyBpKyspXG4gICAgICAgICAgICBtYXggPSB4c1tpXSA+IG1heCA/IHhzW2ldIDogbWF4O1xuICAgICAgICByZXR1cm4geHMubWFwKCh4KSA9PiB4IC8gbWF4KTtcbiAgICB9LFxuICAgIFtcImwxXCIgLyogTm9ybVR5cGUubDEgKi9dOiAoeHMpID0+IHtcbiAgICAgICAgbGV0IHN1bSA9IDA7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgeHMubGVuZ3RoOyBpKyspXG4gICAgICAgICAgICBzdW0gKz0geHNbaV07XG4gICAgICAgIHJldHVybiB4cy5tYXAoKHgpID0+IHggLyBzdW0pO1xuICAgIH0sXG4gICAgW1wibDJcIiAvKiBOb3JtVHlwZS5sMiAqL106ICh4cykgPT4ge1xuICAgICAgICBsZXQgc3VtID0gMDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB4cy5sZW5ndGg7IGkrKylcbiAgICAgICAgICAgIHN1bSArPSB4c1tpXSAqKiAyO1xuICAgICAgICByZXR1cm4geHMubWFwKCh4KSA9PiBNYXRoLnNxcnQoeCAqKiAyIC8gc3VtKSk7XG4gICAgfSxcbn07XG4vKipcbiAqIEhlbHBlciBmdW5jdGlvbiBmb3IgZWxlbWVudC13aXNlIG9wZXJhdGlvbnMuXG4gKi9cbmZ1bmN0aW9uIGVsZW1lbnRXaXNlKGEsIGIsIG9wKSB7XG4gICAgY29uc3QgdmlzaXRlZCA9IG5ldyBTZXQoKTtcbiAgICBjb25zdCByb3dzID0gW107XG4gICAgY29uc3QgY29scyA9IFtdO1xuICAgIGNvbnN0IHZhbHMgPSBbXTtcbiAgICBjb25zdCBvcGVyYXRlID0gKHJvdywgY29sKSA9PiB7XG4gICAgICAgIHJvd3MucHVzaChyb3cpO1xuICAgICAgICBjb2xzLnB1c2goY29sKTtcbiAgICAgICAgY29uc3QgbmV4dFZhbHVlID0gb3AoYS5nZXQocm93LCBjb2wpLCBiLmdldChyb3csIGNvbCkpO1xuICAgICAgICB2YWxzLnB1c2gobmV4dFZhbHVlKTtcbiAgICB9O1xuICAgIGNvbnN0IHZhbHVlc0EgPSBhLmdldFZhbHVlcygpO1xuICAgIGNvbnN0IHJvd3NBID0gYS5nZXRSb3dzKCk7XG4gICAgY29uc3QgY29sc0EgPSBhLmdldENvbHMoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbHVlc0EubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3Qgcm93ID0gcm93c0FbaV07XG4gICAgICAgIGNvbnN0IGNvbCA9IGNvbHNBW2ldO1xuICAgICAgICBjb25zdCBrZXkgPSBgJHtyb3d9OiR7Y29sfWA7XG4gICAgICAgIHZpc2l0ZWQuYWRkKGtleSk7XG4gICAgICAgIG9wZXJhdGUocm93LCBjb2wpO1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZXNCID0gYi5nZXRWYWx1ZXMoKTtcbiAgICBjb25zdCByb3dzQiA9IGIuZ2V0Um93cygpO1xuICAgIGNvbnN0IGNvbHNCID0gYi5nZXRDb2xzKCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZXNCLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHJvdyA9IHJvd3NCW2ldO1xuICAgICAgICBjb25zdCBjb2wgPSBjb2xzQltpXTtcbiAgICAgICAgY29uc3Qga2V5ID0gYCR7cm93fToke2NvbH1gO1xuICAgICAgICBpZiAodmlzaXRlZC5oYXMoa2V5KSlcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICBvcGVyYXRlKHJvdywgY29sKTtcbiAgICB9XG4gICAgY29uc3QgZGltcyA9IFthLm5Sb3dzLCBhLm5Db2xzXTtcbiAgICByZXR1cm4gbmV3IFNwYXJzZU1hdHJpeChyb3dzLCBjb2xzLCB2YWxzLCBkaW1zKTtcbn1cbi8qKlxuICogSGVscGVyIGZ1bmN0aW9uIGZvciBnZXR0aW5nIGRhdGEsIGluZGljZXMsIGFuZCBpbnB0ciBhcnJheXMgZnJvbSBhIHNwYXJzZVxuICogbWF0cml4IHRvIGZvbGxvdyBjc3IgbWF0cml4IGNvbnZlbnRpb25zLiBTdXBlciBpbmVmZmljaWVudCAoYW5kIGtpbmQgb2ZcbiAqIGRlZmVhdHMgdGhlIHB1cnBvc2Ugb2YgdGhpcyBjb252ZW50aW9uKSBidXQgYSBsb3Qgb2YgdGhlIHBvcnRlZCBweXRob24gdHJlZVxuICogc2VhcmNoIGxvZ2ljIGRlcGVuZHMgb24gdGhpcyBkYXRhIGZvcm1hdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENTUih4KSB7XG4gICAgY29uc3QgZW50cmllcyA9IFtdO1xuICAgIHguZm9yRWFjaCgodmFsdWUsIHJvdywgY29sKSA9PiB7XG4gICAgICAgIGVudHJpZXMucHVzaCh7IHZhbHVlLCByb3csIGNvbCB9KTtcbiAgICB9KTtcbiAgICBlbnRyaWVzLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgICAgaWYgKGEucm93ID09PSBiLnJvdylcbiAgICAgICAgICAgIHJldHVybiBhLmNvbCAtIGIuY29sO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICByZXR1cm4gYS5yb3cgLSBiLnJvdztcbiAgICB9KTtcbiAgICBjb25zdCBpbmRpY2VzID0gW107XG4gICAgY29uc3QgdmFsdWVzID0gW107XG4gICAgY29uc3QgaW5kcHRyID0gW107XG4gICAgbGV0IGN1cnJlbnRSb3cgPSAtMTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVudHJpZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgeyByb3csIGNvbCwgdmFsdWUgfSA9IGVudHJpZXNbaV07XG4gICAgICAgIGlmIChyb3cgIT09IGN1cnJlbnRSb3cpIHtcbiAgICAgICAgICAgIGN1cnJlbnRSb3cgPSByb3c7XG4gICAgICAgICAgICBpbmRwdHIucHVzaChpKTtcbiAgICAgICAgfVxuICAgICAgICBpbmRpY2VzLnB1c2goY29sKTtcbiAgICAgICAgdmFsdWVzLnB1c2godmFsdWUpO1xuICAgIH1cbiAgICByZXR1cm4geyBpbmRpY2VzLCB2YWx1ZXMsIGluZHB0ciB9O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pYldGMGNtbDRMbXB6SWl3aWMyOTFjbU5sVW05dmRDSTZJaUlzSW5OdmRYSmpaWE1pT2xzaWJXRjBjbWw0TG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJPenM3T3pzN096czdPenM3T3pzN096dEhRV2xDUnp0QlFVVklMRTlCUVU4c1MwRkJTeXhMUVVGTExFMUJRVTBzVTBGQlV5eERRVUZETzBGQlNXcERPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFBRVUZQTEZsQlFWazdTVUZEWml4UFFVRlBMRWRCUVVjc1NVRkJTU3hIUVVGSExFVkJRV2xDTEVOQlFVTTdTVUZGYkVNc1MwRkJTeXhIUVVGWExFTkJRVU1zUTBGQlF6dEpRVU5zUWl4TFFVRkxMRWRCUVZjc1EwRkJReXhEUVVGRE8wbEJSVE5DTEZsQlEwVXNTVUZCTWtJc1JVRkRNMElzU1VGQk1rSXNSVUZETTBJc1RVRkJLMElzUlVGREwwSXNTVUZCWXp0UlFVVmtMRWxCUVVrc1NVRkJTU3hEUVVGRExFMUJRVTBzUzBGQlN5eEpRVUZKTEVOQlFVTXNUVUZCVFN4SlFVRkpMRWxCUVVrc1EwRkJReXhOUVVGTkxFdEJRVXNzVFVGQlRTeERRVUZETEUxQlFVMHNSVUZCUlR0WlFVTm9SU3hOUVVGTkxFbEJRVWtzUzBGQlN5eERRVU5pTERSRVFVRTBSQ3hEUVVNM1JDeERRVUZETzFOQlEwZzdVVUZGUkN4dlEwRkJiME03VVVGRGNFTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEY2tJc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRja0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFMUJRVTBzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1dVRkRkRU1zVFVGQlRTeEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRM0JDTEUxQlFVMHNSMEZCUnl4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU53UWl4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRExFZEJRVWNzUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXp0WlFVTjZRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWRCUVVjc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU51UXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUXl4TFFVRkxMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRVZCUVVNc1EwRkJReXhEUVVGRE8xTkJRM0pFTzBsQlEwZ3NRMEZCUXp0SlFVVlBMRTlCUVU4c1EwRkJReXhIUVVGWExFVkJRVVVzUjBGQlZ6dFJRVU4wUXl4UFFVRlBMRWRCUVVjc1IwRkJSeXhKUVVGSkxFZEJRVWNzUlVGQlJTeERRVUZETzBsQlEzcENMRU5CUVVNN1NVRkZUeXhUUVVGVExFTkJRVU1zUjBGQlZ5eEZRVUZGTEVkQlFWYzdVVUZEZUVNc1RVRkJUU3haUVVGWkxFZEJRVWNzUjBGQlJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRWxCUVVrc1IwRkJSeXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTTdVVUZETVVRc1NVRkJTU3hEUVVGRExGbEJRVms3V1VGRFppeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMSFZFUVVGMVJDeERRVUZETEVOQlFVTTdTVUZETjBVc1EwRkJRenRKUVVWRUxFZEJRVWNzUTBGQlF5eEhRVUZYTEVWQlFVVXNSMEZCVnl4RlFVRkZMRXRCUVdFN1VVRkRla01zU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGVrSXNUVUZCVFN4SFFVRkhMRWRCUVVjc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRia01zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF6dFpRVU40UWl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUXl4TFFVRkxMRVZCUVVVc1IwRkJSeXhGUVVGRkxFZEJRVWNzUlVGQlF5eERRVUZETEVOQlFVTTdPMWxCUlhwRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJSU3hEUVVGRExFdEJRVXNzUjBGQlJ5eExRVUZMTEVOQlFVTTdTVUZEZWtNc1EwRkJRenRKUVVWRUxFZEJRVWNzUTBGQlF5eEhRVUZYTEVWQlFVVXNSMEZCVnl4RlFVRkZMRmxCUVZrc1IwRkJSeXhEUVVGRE8xRkJRelZETERKQ1FVRXlRanRSUVVNelFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUlVGQlJTeEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTnVReXhKUVVGSkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJRenRaUVVOMlFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlJTeERRVUZETEV0QlFVc3NRMEZCUXpzN1dVRkZjRU1zVDBGQlR5eFpRVUZaTEVOQlFVTTdTVUZEZUVJc1EwRkJRenRKUVVWRUxFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVY3NTVUZCU1R0UlFVTnVRaXhOUVVGTkxGbEJRVmtzUjBGQldTeEpRVUZKTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRSUVVOMFJTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRWaXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRk8xbEJRemRDTEZsQlFWa3NRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF6dFJRVU0xUWl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOSUxFbEJRVWtzVDBGQlR5eEZRVUZGTzFsQlExZ3NPRVpCUVRoR08xbEJRemxHTEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdaMEpCUTNwQ0xFbEJRVWtzUTBGQlF5eERRVUZETEVkQlFVY3NTMEZCU3l4RFFVRkRMRU5CUVVNc1IwRkJSenR2UWtGRGFrSXNUMEZCVHl4RFFVRkRMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTTdPMjlDUVVWeVFpeFBRVUZQTEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF6dFpRVU42UWl4RFFVRkRMRU5CUVVNc1EwRkJRenRUUVVOS08xRkJRMFFzVDBGQlR5eFpRVUZaTEVOQlFVTTdTVUZEZEVJc1EwRkJRenRKUVVWRUxFOUJRVTg3VVVGRFRDeFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1JVRkJSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdTVUZEYkVNc1EwRkJRenRKUVVWRUxFOUJRVTg3VVVGRFRDeFBRVUZQTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZMRXRCUVVzc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRPVVFzTWtOQlFUSkRPMGxCUXpkRExFTkJRVU03U1VGRlJDeFBRVUZQTzFGQlEwd3NUMEZCVHl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hMUVVGTExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRemxFTERKRFFVRXlRenRKUVVNM1F5eERRVUZETzBsQlJVUXNVMEZCVXp0UlFVTlFMRTlCUVU4c1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFVkJRVVVzUzBGQlN5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU5zUlN3MFEwRkJORU03U1VGRE5VTXNRMEZCUXp0SlFVVkVMRTlCUVU4c1EwRkJReXhGUVVGeFJEdFJRVU16UkN4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEV0QlFVc3NSVUZCUlN4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFdEJRVXNzUTBGQlF5eExRVUZMTEVWQlFVVXNTMEZCU3l4RFFVRkRMRWRCUVVjc1JVRkJSU3hMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjZSU3hEUVVGRE8wbEJSVVFzUjBGQlJ5eERRVUZETEVWQlFYVkVPMUZCUTNwRUxFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NXVUZCV1N4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdVVUZEYWtRc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFGQlExWXNTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eExRVUZMTEVWQlFVVXNSVUZCUlR0WlFVTTNRaXhKUVVGSkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUlVGQlJTeExRVUZMTEVOQlFVTXNSMEZCUnl4RlFVRkZMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU53UkN4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOSUxFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1JVRkJSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdVVUZEZEVNc1QwRkJUeXhKUVVGSkxGbEJRVmtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RlFVRkZMRVZCUVVVc1NVRkJTU3hEUVVGRExFOUJRVThzUlVGQlJTeEZRVUZGTEVsQlFUSkNMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU03U1VGRE4wWXNRMEZCUXp0SlFVVkVMRTlCUVU4N1VVRkRUQ3hOUVVGTkxFbEJRVWtzUjBGQlowSXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdVVUZEYkVRc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRVZCUVVVN1dVRkRNMElzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU5xUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOSUxFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFVkJRVVU3V1VGRE4wSXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF6dFJRVU0zUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOSUxFOUJRVThzVFVGQlRTeERRVUZETzBsQlEyaENMRU5CUVVNN1EwRkRSanRCUVVWRU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4VlFVRlZMRk5CUVZNc1EwRkJReXhOUVVGdlFqdEpRVU0xUXl4TlFVRk5MRTlCUVU4c1IwRkJSeXhOUVVGTkxFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTTdTVUZEYWtNc1RVRkJUU3hQUVVGUExFZEJRVWNzVFVGQlRTeERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRPMGxCUTJwRExFMUJRVTBzVDBGQlR5eEhRVUZITEUxQlFVMHNRMEZCUXl4VFFVRlRMRVZCUVVVc1EwRkJRenRKUVVOdVF5eE5RVUZOTEUxQlFVMHNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRE8wbEJRemxDTEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1ZVRkJWU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBsQlEzQkRMRTFCUVUwc1NVRkJTU3hIUVVGSExFbEJRVWtzVlVGQlZTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMGxCUTNCRExFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NXVUZCV1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wbEJSWFJETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU03U1VGRGJFSXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU5zUWl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzBsQlEyeENMRTFCUVUwc1NVRkJTU3hIUVVGSExFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NSVUZCUlN4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03U1VGRE1VTXNUMEZCVHl4SlFVRkpMRmxCUVZrc1EwRkJReXhKUVVGSkxFVkJRVVVzU1VGQlNTeEZRVUZGTEVsQlFVa3NSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRCUVVOc1JDeERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzVVVGQlVTeERRVUZETEVsQlFXTTdTVUZEY2tNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0SlFVTndRaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEZsQlFWa3NRMEZCUXl4RlFVRkZMRVZCUVVVc1JVRkJSU3hGUVVGRkxFVkJRVVVzUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZCUXp0SlFVTnNSQ3hMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1NVRkJTU3hGUVVGRkxFTkJRVU1zUlVGQlJUdFJRVU16UWl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkZkRUlzVDBGQlR5eE5RVUZOTEVOQlFVTTdRVUZEYUVJc1EwRkJRenRCUVVWRU96dEhRVVZITzBGQlEwZ3NUVUZCVFN4VlFVRlZMR2RDUVVGblFpeERRVU01UWl4RFFVRmxMRVZCUTJZc1EwRkJaVHRKUVVWbUxFOUJRVThzVjBGQlZ5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRE5VTXNRMEZCUXp0QlFVVkVPenRIUVVWSE8wRkJRMGdzVFVGQlRTeFZRVUZWTEVkQlFVY3NRMEZCUXl4RFFVRmxMRVZCUVVVc1EwRkJaVHRKUVVOc1JDeFBRVUZQTEZkQlFWY3NRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzBGQlF6VkRMRU5CUVVNN1FVRkZSRHM3UjBGRlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4UlFVRlJMRU5CUVVNc1EwRkJaU3hGUVVGRkxFTkJRV1U3U1VGRGRrUXNUMEZCVHl4WFFVRlhMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTTFReXhEUVVGRE8wRkJSVVE3TzBkQlJVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1QwRkJUeXhEUVVGRExFTkJRV1VzUlVGQlJTeERRVUZsTzBsQlEzUkVMRTlCUVU4c1YwRkJWeXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOMFJDeERRVUZETzBGQlJVUTdPMGRCUlVjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzWTBGQll5eERRVUZETEVOQlFXVXNSVUZCUlN4TlFVRmpPMGxCUXpWRUxFOUJRVThzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRXRCUVdFc1JVRkJSU3hGUVVGRk8xRkJRemRDTEU5QlFVOHNTMEZCU3l4SFFVRkhMRTFCUVUwc1EwRkJRenRKUVVONFFpeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTk1MRU5CUVVNN1FVRkZSRHM3UjBGRlJ6dEJRVU5JTEUxQlFVMHNWVUZCVlN4alFVRmpMRU5CUVVNc1EwRkJaVHRKUVVNMVF5eE5RVUZOTEZkQlFWY3NSMEZCUnl4SlFVRkpMRWRCUVVjc1JVRkJSU3hEUVVGRE8wbEJRemxDTEUxQlFVMHNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJReXhUUVVGVExFVkJRVVVzUTBGQlF6dEpRVU0zUWl4TlFVRk5MRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTTdTVUZEZWtJc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRPMGxCUTNwQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhOUVVGTkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMUZCUTNSRExFbEJRVWtzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNN1dVRkRha0lzVjBGQlZ5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOMFFqdEpRVU5FTEUxQlFVMHNhVUpCUVdsQ0xFZEJRVWNzUTBGQlF5eERRVUZOTEVWQlFVVXNTMEZCWVN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExGZEJRVmNzUTBGQlF5eEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1NVRkROMFVzVFVGQlRTeFZRVUZWTEVkQlFVY3NUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhwUWtGQmFVSXNRMEZCUXl4RFFVRkRPMGxCUTNCRUxFMUJRVTBzVVVGQlVTeEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc2FVSkJRV2xDTEVOQlFVTXNRMEZCUXp0SlFVTm9SQ3hOUVVGTkxGRkJRVkVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMR2xDUVVGcFFpeERRVUZETEVOQlFVTTdTVUZGYUVRc1QwRkJUeXhKUVVGSkxGbEJRVmtzUTBGQlF5eFJRVUZSTEVWQlFVVXNVVUZCVVN4RlFVRkZMRlZCUVZVc1JVRkJSU3hEUVVGRExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTjJSU3hEUVVGRE8wRkJSVVE3TzBkQlJVYzdRVUZEU0N4TlFVRk5MRlZCUVZVc1UwRkJVeXhEUVVGRExFTkJRV1VzUlVGQlJTeFJRVUZSTEhsQ1FVRmpPMGxCUXk5RUxFMUJRVTBzVFVGQlRTeEhRVUZITEU5QlFVOHNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRKUVVWcVF5eE5RVUZOTEZOQlFWTXNSMEZCUnl4SlFVRkpMRWRCUVVjc1JVRkJiMElzUTBGQlF6dEpRVU01UXl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRVZCUVVVc1JVRkJSVHRSUVVONFFpeE5RVUZOTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eEpRVUZKTEVWQlFVVXNRMEZCUXp0UlFVTjBReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTJZc1UwRkJVeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNN1NVRkRNMElzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZGU0N4TlFVRk5MRlZCUVZVc1IwRkJSeXhKUVVGSkxGbEJRVmtzUTBGQlF5eEZRVUZGTEVWQlFVVXNSVUZCUlN4RlFVRkZMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTXNRMEZCUXp0SlFVVTNSQ3hMUVVGTExFMUJRVTBzUjBGQlJ5eEpRVUZKTEZOQlFWTXNRMEZCUXl4SlFVRkpMRVZCUVVVc1JVRkJSVHRSUVVOc1F5eE5RVUZOTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlJTeERRVUZETEVsQlFVa3NSVUZCUlN4RFFVRkRPMUZCUlhoRExFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEYUVRc1RVRkJUU3hKUVVGSkxFZEJRVWNzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUXpGQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlR0WlFVTnNReXhWUVVGVkxFTkJRVU1zUjBGQlJ5eERRVUZETEVkQlFVY3NSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1MwRkRla003U1VGRlJDeFBRVUZQTEZWQlFWVXNRMEZCUXp0QlFVTndRaXhEUVVGRE8wRkJUVVFzVFVGQlRTeFBRVUZQTEVkQlFWazdTVUZEZGtJc01FSkJRV01zUlVGQlJTeERRVUZETEVWQlFWa3NSVUZCUlN4RlFVRkZPMUZCUXk5Q0xFbEJRVWtzUjBGQlJ5eEhRVUZITEVOQlFVTXNVVUZCVVN4RFFVRkRPMUZCUTNCQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlR0WlFVTm9ReXhIUVVGSExFZEJRVWNzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU03VVVGRmJFTXNUMEZCVHl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRGFFTXNRMEZCUXp0SlFVTkVMSGRDUVVGaExFVkJRVVVzUTBGQlF5eEZRVUZaTEVWQlFVVXNSVUZCUlR0UlFVTTVRaXhKUVVGSkxFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEV2l4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVU3V1VGRGFFTXNSMEZCUnl4SlFVRkpMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVVZtTEU5QlFVOHNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMmhETEVOQlFVTTdTVUZEUkN4M1FrRkJZU3hGUVVGRkxFTkJRVU1zUlVGQldTeEZRVUZGTEVWQlFVVTdVVUZET1VJc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzFGQlExb3NTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRk8xbEJRMmhETEVkQlFVY3NTVUZCU1N4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzFGQlJYQkNMRTlCUVU4c1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRGFFUXNRMEZCUXp0RFFVTkdMRU5CUVVNN1FVRlJSanM3UjBGRlJ6dEJRVU5JTEZOQlFWTXNWMEZCVnl4RFFVTnNRaXhEUVVGbExFVkJRMllzUTBGQlpTeEZRVU5tTEVWQlFXOURPMGxCUlhCRExFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NSMEZCUnl4RlFVRlZMRU5CUVVNN1NVRkRiRU1zVFVGQlRTeEpRVUZKTEVkQlFXRXNSVUZCUlN4RFFVRkRPMGxCUXpGQ0xFMUJRVTBzU1VGQlNTeEhRVUZoTEVWQlFVVXNRMEZCUXp0SlFVTXhRaXhOUVVGTkxFbEJRVWtzUjBGQllTeEZRVUZGTEVOQlFVTTdTVUZGTVVJc1RVRkJUU3hQUVVGUExFZEJRVWNzUTBGQlF5eEhRVUZYTEVWQlFVVXNSMEZCVnl4RlFVRkZMRVZCUVVVN1VVRkRNME1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVObUxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRaaXhOUVVGTkxGTkJRVk1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFVkJRVVVzUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFVkJRVVVzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTjJSQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRPMGxCUTNaQ0xFTkJRVU1zUTBGQlF6dEpRVU5HTEUxQlFVMHNUMEZCVHl4SFFVRkhMRU5CUVVNc1EwRkJReXhUUVVGVExFVkJRVVVzUTBGQlF6dEpRVU01UWl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTTdTVUZETVVJc1RVRkJUU3hMUVVGTExFZEJRVWNzUTBGQlF5eERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRPMGxCUXpGQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMUZCUTNaRExFMUJRVTBzUjBGQlJ5eEhRVUZITEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOeVFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGNrSXNUVUZCVFN4SFFVRkhMRWRCUVVjc1IwRkJSeXhIUVVGSExFbEJRVWtzUjBGQlJ5eEZRVUZGTEVOQlFVTTdVVUZETlVJc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTnFRaXhQUVVGUExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMHRCUTI1Q08wbEJSVVFzVFVGQlRTeFBRVUZQTEVkQlFVY3NRMEZCUXl4RFFVRkRMRk5CUVZNc1JVRkJSU3hEUVVGRE8wbEJRemxDTEUxQlFVMHNTMEZCU3l4SFFVRkhMRU5CUVVNc1EwRkJReXhQUVVGUExFVkJRVVVzUTBGQlF6dEpRVU14UWl4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTTdTVUZETVVJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRTlCUVU4c1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdVVUZEZGtNc1RVRkJUU3hIUVVGSExFZEJRVWNzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNKQ0xFMUJRVTBzUjBGQlJ5eEhRVUZITEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOeVFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1NVRkJTU3hIUVVGSExFVkJRVVVzUTBGQlF6dFJRVU0xUWl4SlFVRkpMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eERRVUZETzFsQlFVVXNVMEZCVXp0UlFVTXZRaXhQUVVGUExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMHRCUTI1Q08wbEJSVVFzVFVGQlRTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0SlFVTm9ReXhQUVVGUExFbEJRVWtzV1VGQldTeERRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1NVRkJTU3hGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEyeEVMRU5CUVVNN1FVRkZSRHM3T3pzN1IwRkxSenRCUVVOSUxFMUJRVTBzVlVGQlZTeE5RVUZOTEVOQlFVTXNRMEZCWlR0SlFVTndReXhOUVVGTkxFOUJRVThzUjBGQldTeEZRVUZGTEVOQlFVTTdTVUZGTlVJc1EwRkJReXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEV0QlFVc3NSVUZCUlN4SFFVRkhMRVZCUVVVc1IwRkJSeXhGUVVGRkxFVkJRVVU3VVVGRE5VSXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhGUVVGRExFdEJRVXNzUlVGQlJTeEhRVUZITEVWQlFVVXNSMEZCUnl4RlFVRkRMRU5CUVVNc1EwRkJRenRKUVVOc1F5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVVklMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1VVRkRjRUlzU1VGQlNTeERRVUZETEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNc1EwRkJReXhIUVVGSE8xbEJRMnBDTEU5QlFVOHNRMEZCUXl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZET3p0WlFVVnlRaXhQUVVGUExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJRenRKUVVONlFpeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVVklMRTFCUVUwc1QwRkJUeXhIUVVGaExFVkJRVVVzUTBGQlF6dEpRVU0zUWl4TlFVRk5MRTFCUVUwc1IwRkJZU3hGUVVGRkxFTkJRVU03U1VGRE5VSXNUVUZCVFN4TlFVRk5MRWRCUVdFc1JVRkJSU3hEUVVGRE8wbEJSVFZDTEVsQlFVa3NWVUZCVlN4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRM0JDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xRkJRM1pETEUxQlFVMHNSVUZCUXl4SFFVRkhMRVZCUVVVc1IwRkJSeXhGUVVGRkxFdEJRVXNzUlVGQlF5eEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOeVF5eEpRVUZKTEVkQlFVY3NTMEZCU3l4VlFVRlZMRVZCUVVVN1dVRkRkRUlzVlVGQlZTeEhRVUZITEVkQlFVY3NRMEZCUXp0WlFVTnFRaXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMU5CUTJoQ08xRkJRMFFzVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOc1FpeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wdEJRM0JDTzBsQlJVUXNUMEZCVHl4RlFVRkRMRTlCUVU4c1JVRkJSU3hOUVVGTkxFVkJRVVVzVFVGQlRTeEZRVUZETEVOQlFVTTdRVUZEYmtNc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSWk4cUtseHVJQ29nUUd4cFkyVnVjMlZjYmlBcVhHNGdLaUJEYjNCNWNtbG5hSFFnTWpBeE9TQkhiMjluYkdVZ1RFeERMaUJCYkd3Z1VtbG5hSFJ6SUZKbGMyVnlkbVZrTGx4dUlDcGNiaUFxSUV4cFkyVnVjMlZrSUhWdVpHVnlJSFJvWlNCQmNHRmphR1VnVEdsalpXNXpaU3dnVm1WeWMybHZiaUF5TGpBZ0tIUm9aU0JjSWt4cFkyVnVjMlZjSWlrN1hHNGdLaUI1YjNVZ2JXRjVJRzV2ZENCMWMyVWdkR2hwY3lCbWFXeGxJR1Y0WTJWd2RDQnBiaUJqYjIxd2JHbGhibU5sSUhkcGRHZ2dkR2hsSUV4cFkyVnVjMlV1WEc0Z0tpQlpiM1VnYldGNUlHOWlkR0ZwYmlCaElHTnZjSGtnYjJZZ2RHaGxJRXhwWTJWdWMyVWdZWFJjYmlBcVhHNGdLaUFnSUNBZ2FIUjBjRG92TDNkM2R5NWhjR0ZqYUdVdWIzSm5MMnhwWTJWdWMyVnpMMHhKUTBWT1UwVXRNaTR3WEc0Z0tseHVJQ29nVlc1c1pYTnpJSEpsY1hWcGNtVmtJR0o1SUdGd2NHeHBZMkZpYkdVZ2JHRjNJRzl5SUdGbmNtVmxaQ0IwYnlCcGJpQjNjbWwwYVc1bkxDQnpiMlowZDJGeVpWeHVJQ29nWkdsemRISnBZblYwWldRZ2RXNWtaWElnZEdobElFeHBZMlZ1YzJVZ2FYTWdaR2x6ZEhKcFluVjBaV1FnYjI0Z1lXNGdYQ0pCVXlCSlUxd2lJRUpCVTBsVExGeHVJQ29nVjBsVVNFOVZWQ0JYUVZKU1FVNVVTVVZUSUU5U0lFTlBUa1JKVkVsUFRsTWdUMFlnUVU1WklFdEpUa1FzSUdWcGRHaGxjaUJsZUhCeVpYTnpJRzl5SUdsdGNHeHBaV1F1WEc0Z0tpQlRaV1VnZEdobElFeHBZMlZ1YzJVZ1ptOXlJSFJvWlNCemNHVmphV1pwWXlCc1lXNW5kV0ZuWlNCbmIzWmxjbTVwYm1jZ2NHVnliV2x6YzJsdmJuTWdZVzVrWEc0Z0tpQnNhVzFwZEdGMGFXOXVjeUIxYm1SbGNpQjBhR1VnVEdsalpXNXpaUzVjYmlBcUlEMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFZ4dUlDb3ZYRzVjYm1sdGNHOXlkQ0FxSUdGeklIVjBhV3h6SUdaeWIyMGdKeTR2ZFhScGJITW5PMXh1WEc1MGVYQmxJRVZ1ZEhKNUlEMGdleUIyWVd4MVpUb2diblZ0WW1WeU95QnliM2M2SUc1MWJXSmxjanNnWTI5c09pQnVkVzFpWlhJZ2ZUdGNibHh1THlvcVhHNGdLaUJKYm5SbGNtNWhiQ0F5TFdScGJXVnVjMmx2Ym1Gc0lITndZWEp6WlNCdFlYUnlhWGdnWTJ4aGMzTmNiaUFxTDF4dVpYaHdiM0owSUdOc1lYTnpJRk53WVhKelpVMWhkSEpwZUNCN1hHNGdJSEJ5YVhaaGRHVWdaVzUwY21sbGN5QTlJRzVsZHlCTllYQThjM1J5YVc1bkxDQkZiblJ5ZVQ0b0tUdGNibHh1SUNCeVpXRmtiMjVzZVNCdVVtOTNjem9nYm5WdFltVnlJRDBnTUR0Y2JpQWdjbVZoWkc5dWJIa2dia052YkhNNklHNTFiV0psY2lBOUlEQTdYRzVjYmlBZ1kyOXVjM1J5ZFdOMGIzSW9YRzRnSUNBZ2NtOTNjem9nYm5WdFltVnlXMTBnZkNCSmJuUXpNa0Z5Y21GNUxGeHVJQ0FnSUdOdmJITTZJRzUxYldKbGNsdGRJSHdnU1c1ME16SkJjbkpoZVN4Y2JpQWdJQ0IyWVd4MVpYTTZJRzUxYldKbGNsdGRJSHdnUm14dllYUXpNa0Z5Y21GNUxGeHVJQ0FnSUdScGJYTTZJRzUxYldKbGNsdGRYRzRnSUNrZ2UxeHVJQ0FnSUdsbUlDaHliM2R6TG14bGJtZDBhQ0FoUFQwZ1kyOXNjeTVzWlc1bmRHZ2dmSHdnY205M2N5NXNaVzVuZEdnZ0lUMDlJSFpoYkhWbGN5NXNaVzVuZEdncElIdGNiaUFnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2loY2JpQWdJQ0FnSUNBZ0ozSnZkM01zSUdOdmJITWdZVzVrSUhaaGJIVmxjeUJoY25KaGVYTWdiWFZ6ZENCaGJHd2dhR0YyWlNCMGFHVWdjMkZ0WlNCc1pXNW5kR2duWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJSDFjYmx4dUlDQWdJQzh2SUZSUFJFODZJRUZ6YzJWeWRDQjBhR0YwSUdScGJYTWdZWEpsSUd4bFoybDBMbHh1SUNBZ0lIUm9hWE11YmxKdmQzTWdQU0JrYVcxeld6QmRPMXh1SUNBZ0lIUm9hWE11YmtOdmJITWdQU0JrYVcxeld6RmRPMXh1SUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dkbUZzZFdWekxteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQnliM2NnUFNCeWIzZHpXMmxkTzF4dUlDQWdJQ0FnWTI5dWMzUWdZMjlzSUQwZ1kyOXNjMXRwWFR0Y2JpQWdJQ0FnSUhSb2FYTXVZMmhsWTJ0RWFXMXpLSEp2ZHl3Z1kyOXNLVHRjYmlBZ0lDQWdJR052Ym5OMElHdGxlU0E5SUhSb2FYTXViV0ZyWlV0bGVTaHliM2NzSUdOdmJDazdYRzRnSUNBZ0lDQjBhR2x6TG1WdWRISnBaWE11YzJWMEtHdGxlU3dnZTNaaGJIVmxPaUIyWVd4MVpYTmJhVjBzSUhKdmR5d2dZMjlzZlNrN1hHNGdJQ0FnZlZ4dUlDQjlYRzVjYmlBZ2NISnBkbUYwWlNCdFlXdGxTMlY1S0hKdmR6b2diblZ0WW1WeUxDQmpiMnc2SUc1MWJXSmxjaWs2SUhOMGNtbHVaeUI3WEc0Z0lDQWdjbVYwZFhKdUlHQWtlM0p2ZDMwNkpIdGpiMng5WUR0Y2JpQWdmVnh1WEc0Z0lIQnlhWFpoZEdVZ1kyaGxZMnRFYVcxektISnZkem9nYm5WdFltVnlMQ0JqYjJ3NklHNTFiV0psY2lrZ2UxeHVJQ0FnSUdOdmJuTjBJSGRwZEdocGJrSnZkVzVrY3lBOUlISnZkeUE4SUhSb2FYTXVibEp2ZDNNZ0ppWWdZMjlzSUR3Z2RHaHBjeTV1UTI5c2N6dGNiaUFnSUNCcFppQW9JWGRwZEdocGJrSnZkVzVrY3lsY2JpQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWduY205M0lHRnVaQzl2Y2lCamIyd2djM0JsWTJsbWFXVmtJRzkxZEhOcFpHVWdiMllnYldGMGNtbDRJR1JwYldWdWMybHZibk1uS1R0Y2JpQWdmVnh1WEc0Z0lITmxkQ2h5YjNjNklHNTFiV0psY2l3Z1kyOXNPaUJ1ZFcxaVpYSXNJSFpoYkhWbE9pQnVkVzFpWlhJcElIdGNiaUFnSUNCMGFHbHpMbU5vWldOclJHbHRjeWh5YjNjc0lHTnZiQ2s3WEc0Z0lDQWdZMjl1YzNRZ2EyVjVJRDBnZEdocGN5NXRZV3RsUzJWNUtISnZkeXdnWTI5c0tUdGNiaUFnSUNCcFppQW9JWFJvYVhNdVpXNTBjbWxsY3k1b1lYTW9hMlY1S1NsY2JpQWdJQ0FnSUhSb2FYTXVaVzUwY21sbGN5NXpaWFFvYTJWNUxDQjdkbUZzZFdVc0lISnZkeXdnWTI5c2ZTazdYRzRnSUNBZ1pXeHpaVnh1SUNBZ0lDQWdkR2hwY3k1bGJuUnlhV1Z6TG1kbGRDaHJaWGtwSVM1MllXeDFaU0E5SUhaaGJIVmxPMXh1SUNCOVhHNWNiaUFnWjJWMEtISnZkem9nYm5WdFltVnlMQ0JqYjJ3NklHNTFiV0psY2l3Z1pHVm1ZWFZzZEZaaGJIVmxJRDBnTUNrZ2UxeHVJQ0FnSUM4dmRHaHBjeTVqYUdWamEwUnBiWE1vY205M0xDQmpiMndwTzF4dUlDQWdJR052Ym5OMElHdGxlU0E5SUhSb2FYTXViV0ZyWlV0bGVTaHliM2NzSUdOdmJDazdYRzRnSUNBZ2FXWWdLSFJvYVhNdVpXNTBjbWxsY3k1b1lYTW9hMlY1S1NsY2JpQWdJQ0FnSUhKbGRIVnliaUIwYUdsekxtVnVkSEpwWlhNdVoyVjBLR3RsZVNraExuWmhiSFZsTzF4dUlDQWdJR1ZzYzJWY2JpQWdJQ0FnSUhKbGRIVnliaUJrWldaaGRXeDBWbUZzZFdVN1hHNGdJSDFjYmx4dUlDQm5aWFJCYkd3b2IzSmtaWEpsWkNBOUlIUnlkV1VwT2lCN0lIWmhiSFZsT2lCdWRXMWlaWEk3SUhKdmR6b2diblZ0WW1WeU95QmpiMnc2SUc1MWJXSmxjaUI5VzEwZ2UxeHVJQ0FnSUdOdmJuTjBJSEp2ZDBOdmJGWmhiSFZsY3pvZ1JXNTBjbmxiWFNBOUlHNWxkeUJCY25KaGVTaDBhR2x6TG1WdWRISnBaWE11YzJsNlpTa3VabWxzYkNodWRXeHNLVHRjYmlBZ0lDQnNaWFFnYVNBOUlEQTdYRzRnSUNBZ2RHaHBjeTVsYm5SeWFXVnpMbVp2Y2tWaFkyZ29LSFpoYkhWbEtTQTlQaUI3WEc0Z0lDQWdJQ0J5YjNkRGIyeFdZV3gxWlhOYmFTc3JYU0E5SUhaaGJIVmxPMXh1SUNBZ0lIMHBPMXh1SUNBZ0lHbG1JQ2h2Y21SbGNtVmtLU0I3WEc0Z0lDQWdJQ0F2THlCUGNtUmxjbWx1WnlCMGFHVWdjbVZ6ZFd4MElHbHpiaWQwSUhKbGNYVnBjbVZrSUdadmNpQndjbTlqWlhOemFXNW5JR0oxZENCcGRDQmtiMlZ6SUcxaGEyVWdhWFFnWldGemFXVnlJSFJ2SUhkeWFYUmxJSFJsYzNSelhHNGdJQ0FnSUNCeWIzZERiMnhXWVd4MVpYTXVjMjl5ZENnb1lTd2dZaWtnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQnBaaUFvWVM1eWIzY2dQVDA5SUdJdWNtOTNLVnh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJoTG1OdmJDQXRJR0l1WTI5c08xeHVJQ0FnSUNBZ0lDQmxiSE5sWEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUdFdWNtOTNJQzBnWWk1eWIzYzdYRzRnSUNBZ0lDQjlLVHRjYmlBZ0lDQjlYRzRnSUNBZ2NtVjBkWEp1SUhKdmQwTnZiRlpoYkhWbGN6dGNiaUFnZlZ4dVhHNGdJR2RsZEVScGJYTW9LVG9nYm5WdFltVnlXMTBnZTF4dUlDQWdJSEpsZEhWeWJpQmJkR2hwY3k1dVVtOTNjeXdnZEdocGN5NXVRMjlzYzEwN1hHNGdJSDFjYmx4dUlDQm5aWFJTYjNkektDazZJRzUxYldKbGNsdGRJSHRjYmlBZ0lDQnlaWFIxY200Z1FYSnlZWGt1Wm5KdmJTaDBhR2x6TG1WdWRISnBaWE1zSUNoYlgydGxlU3dnZG1Gc2RXVmRLU0E5UGlCMllXeDFaUzV5YjNjcE8xeHVJQ0FnSUM4dklISmxkSFZ5YmlCMGFHbHpMbkp2ZDNNZ1lYTWdkVzVyYm05M2JpQmhjeUJ1ZFcxaVpYSmJYVHRjYmlBZ2ZWeHVYRzRnSUdkbGRFTnZiSE1vS1RvZ2JuVnRZbVZ5VzEwZ2UxeHVJQ0FnSUhKbGRIVnliaUJCY25KaGVTNW1jbTl0S0hSb2FYTXVaVzUwY21sbGN5d2dLRnRmYTJWNUxDQjJZV3gxWlYwcElEMCtJSFpoYkhWbExtTnZiQ2s3WEc0Z0lDQWdMeThnY21WMGRYSnVJSFJvYVhNdVkyOXNjeUJoY3lCMWJtdHViM2R1SUdGeklHNTFiV0psY2x0ZE8xeHVJQ0I5WEc1Y2JpQWdaMlYwVm1Gc2RXVnpLQ2s2SUc1MWJXSmxjbHRkSUh0Y2JpQWdJQ0J5WlhSMWNtNGdRWEp5WVhrdVpuSnZiU2gwYUdsekxtVnVkSEpwWlhNc0lDaGJYMnRsZVN3Z2RtRnNkV1ZkS1NBOVBpQjJZV3gxWlM1MllXeDFaU2s3WEc0Z0lDOHZjbVYwZFhKdUlIUm9hWE11ZG1Gc2RXVnpJR0Z6SUhWdWEyNXZkMjRnWVhNZ2JuVnRZbVZ5VzEwN1hHNGdJSDFjYmx4dUlDQm1iM0pGWVdOb0tHWnVPaUFvZG1Gc2RXVTZJRzUxYldKbGNpd2djbTkzT2lCdWRXMWlaWElzSUdOdmJEb2diblZ0WW1WeUtTQTlQaUIyYjJsa0tUb2dkbTlwWkNCN1hHNGdJQ0FnZEdocGN5NWxiblJ5YVdWekxtWnZja1ZoWTJnb0tIWmhiSFZsS1NBOVBpQm1iaWgyWVd4MVpTNTJZV3gxWlN3Z2RtRnNkV1V1Y205M0xDQjJZV3gxWlM1amIyd3BLVHRjYmlBZ2ZWeHVYRzRnSUcxaGNDaG1iam9nS0haaGJIVmxPaUJ1ZFcxaVpYSXNJSEp2ZHpvZ2JuVnRZbVZ5TENCamIydzZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlLVG9nVTNCaGNuTmxUV0YwY21sNElIdGNiaUFnSUNCamIyNXpkQ0IyWVd4eklEMGdibVYzSUVac2IyRjBNekpCY25KaGVTaDBhR2x6TG1WdWRISnBaWE11YzJsNlpTazdYRzRnSUNBZ2JHVjBJR2tnUFNBd08xeHVJQ0FnSUhSb2FYTXVaVzUwY21sbGN5NW1iM0pGWVdOb0tDaDJZV3gxWlNrZ1BUNGdlMXh1SUNBZ0lDQWdkbUZzYzF0cEt5dGRJRDBnWm00b2RtRnNkV1V1ZG1Gc2RXVXNJSFpoYkhWbExuSnZkeXdnZG1Gc2RXVXVZMjlzS1R0Y2JpQWdJQ0I5S1R0Y2JpQWdJQ0JqYjI1emRDQmthVzF6SUQwZ1czUm9hWE11YmxKdmQzTXNJSFJvYVhNdWJrTnZiSE5kTzF4dUlDQWdJSEpsZEhWeWJpQnVaWGNnVTNCaGNuTmxUV0YwY21sNEtIUm9hWE11WjJWMFVtOTNjeWdwTENCMGFHbHpMbWRsZEVOdmJITW9LU3dnZG1Gc2N5QmhjeUIxYm10dWIzZHVJR0Z6SUc1MWJXSmxjbHRkTENCa2FXMXpLVHRjYmlBZ2ZWeHVYRzRnSUhSdlFYSnlZWGtvS1NCN1hHNGdJQ0FnWTI5dWMzUWdjbTkzY3pvZ2RXNWtaV1pwYm1Wa1cxMGdQU0IxZEdsc2N5NWxiWEIwZVNoMGFHbHpMbTVTYjNkektUdGNiaUFnSUNCamIyNXpkQ0J2ZFhSd2RYUWdQU0J5YjNkekxtMWhjQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RYUnBiSE11ZW1WeWIzTW9kR2hwY3k1dVEyOXNjeWs3WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkR2hwY3k1bGJuUnlhV1Z6TG1admNrVmhZMmdvS0haaGJIVmxLU0E5UGlCN1hHNGdJQ0FnSUNCdmRYUndkWFJiZG1Gc2RXVXVjbTkzWFZ0MllXeDFaUzVqYjJ4ZElEMGdkbUZzZFdVdWRtRnNkV1U3WEc0Z0lDQWdmU2s3WEc0Z0lDQWdjbVYwZFhKdUlHOTFkSEIxZER0Y2JpQWdmVnh1ZlZ4dVhHNHZLaXBjYmlBcUlGUnlZVzV6Y0c5elpTQmhJSE53WVhKelpTQnRZWFJ5YVhoY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSFJ5WVc1emNHOXpaU2h0WVhSeWFYZzZJRk53WVhKelpVMWhkSEpwZUNrNklGTndZWEp6WlUxaGRISnBlQ0I3WEc0Z0lHTnZibk4wSUc5c1pGSnZkM01nUFNCdFlYUnlhWGd1WjJWMFVtOTNjeWdwTzF4dUlDQmpiMjV6ZENCdmJHUkRiMnh6SUQwZ2JXRjBjbWw0TG1kbGRFTnZiSE1vS1R0Y2JpQWdZMjl1YzNRZ2IyeGtWbUZzY3lBOUlHMWhkSEpwZUM1blpYUldZV3gxWlhNb0tUdGNiaUFnWTI5dWMzUWdiV0YwYkdWdUlEMGdiMnhrUTI5c2N5NXNaVzVuZEdnN1hHNGdJR052Ym5OMElHTnZiSE1nUFNCdVpYY2dTVzUwTXpKQmNuSmhlU2h0WVhSc1pXNHBPMXh1SUNCamIyNXpkQ0J5YjNkeklEMGdibVYzSUVsdWRETXlRWEp5WVhrb2JXRjBiR1Z1S1R0Y2JpQWdZMjl1YzNRZ2RtRnNjeUE5SUc1bGR5QkdiRzloZERNeVFYSnlZWGtvYldGMGJHVnVLVHRjYmx4dUlDQmpiMnh6TG5ObGRDaHZiR1JTYjNkektUdGNiaUFnY205M2N5NXpaWFFvYjJ4a1EyOXNjeWs3WEc0Z0lIWmhiSE11YzJWMEtHOXNaRlpoYkhNcE8xeHVJQ0JqYjI1emRDQmthVzF6SUQwZ1cyMWhkSEpwZUM1dVEyOXNjeXdnYldGMGNtbDRMbTVTYjNkelhUdGNiaUFnY21WMGRYSnVJRzVsZHlCVGNHRnljMlZOWVhSeWFYZ29jbTkzY3l3Z1kyOXNjeXdnZG1Gc2N5d2daR2x0Y3lrN1hHNTlYRzVjYmk4cUtseHVJQ29nUTI5dWMzUnlkV04wSUdFZ2MzQmhjbk5sSUdsa1pXNTBhWFI1SUcxaGRISnBlRnh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2FXUmxiblJwZEhrb2MybDZaVG9nYm5WdFltVnlXMTBwT2lCVGNHRnljMlZOWVhSeWFYZ2dlMXh1SUNCamIyNXpkQ0JiY205M2MxMGdQU0J6YVhwbE8xeHVJQ0JqYjI1emRDQnRZWFJ5YVhnZ1BTQnVaWGNnVTNCaGNuTmxUV0YwY21sNEtGdGRMQ0JiWFN3Z1cxMHNJSE5wZW1VcE8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhKdmQzTTdJR2tyS3lsY2JpQWdJQ0J0WVhSeWFYZ3VjMlYwS0drc0lHa3NJREVwTzF4dVhHNGdJSEpsZEhWeWJpQnRZWFJ5YVhnN1hHNTlYRzVjYmk4cUtseHVJQ29nUld4bGJXVnVkQzEzYVhObElHMTFiSFJwY0d4cFkyRjBhVzl1SUc5bUlIUjNieUJ0WVhSeWFXTmxjMXh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2NHRnBjbmRwYzJWTmRXeDBhWEJzZVNoY2JpQWdZVG9nVTNCaGNuTmxUV0YwY21sNExGeHVJQ0JpT2lCVGNHRnljMlZOWVhSeWFYaGNiaWs2SUZOd1lYSnpaVTFoZEhKcGVDQjdYRzRnSUhKbGRIVnliaUJsYkdWdFpXNTBWMmx6WlNoaExDQmlMQ0FvZUN3Z2VTa2dQVDRnZUNBcUlIa3BPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlFVnNaVzFsYm5RdGQybHpaU0JoWkdScGRHbHZiaUJ2WmlCMGQyOGdiV0YwY21salpYTmNiaUFxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUdGa1pDaGhPaUJUY0dGeWMyVk5ZWFJ5YVhnc0lHSTZJRk53WVhKelpVMWhkSEpwZUNrNklGTndZWEp6WlUxaGRISnBlQ0I3WEc0Z0lISmxkSFZ5YmlCbGJHVnRaVzUwVjJselpTaGhMQ0JpTENBb2VDd2dlU2tnUFQ0Z2VDQXJJSGtwTzF4dWZWeHVYRzR2S2lwY2JpQXFJRVZzWlcxbGJuUXRkMmx6WlNCemRXSjBjbUZqZEdsdmJpQnZaaUIwZDI4Z2JXRjBjbWxqWlhOY2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJSE4xWW5SeVlXTjBLR0U2SUZOd1lYSnpaVTFoZEhKcGVDd2dZam9nVTNCaGNuTmxUV0YwY21sNEtUb2dVM0JoY25ObFRXRjBjbWw0SUh0Y2JpQWdjbVYwZFhKdUlHVnNaVzFsYm5SWGFYTmxLR0VzSUdJc0lDaDRMQ0I1S1NBOVBpQjRJQzBnZVNrN1hHNTlYRzVjYmk4cUtseHVJQ29nUld4bGJXVnVkQzEzYVhObElHMWhlR2x0ZFcwZ2IyWWdkSGR2SUcxaGRISnBZMlZ6WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnRZWGhwYlhWdEtHRTZJRk53WVhKelpVMWhkSEpwZUN3Z1lqb2dVM0JoY25ObFRXRjBjbWw0S1RvZ1UzQmhjbk5sVFdGMGNtbDRJSHRjYmlBZ2NtVjBkWEp1SUdWc1pXMWxiblJYYVhObEtHRXNJR0lzSUNoNExDQjVLU0E5UGlBb2VDQStJSGtnUHlCNElEb2dlU2twTzF4dWZWeHVYRzR2S2lwY2JpQXFJRk5qWVd4aGNpQnRkV3gwYVhCc2FXTmhkR2x2YmlCdlppQjBkMjhnYldGMGNtbGpaWE5jYmlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHMTFiSFJwY0d4NVUyTmhiR0Z5S0dFNklGTndZWEp6WlUxaGRISnBlQ3dnYzJOaGJHRnlPaUJ1ZFcxaVpYSXBPaUJUY0dGeWMyVk5ZWFJ5YVhnZ2UxeHVJQ0J5WlhSMWNtNGdZUzV0WVhBb0tIWmhiSFZsT2lCdWRXMWlaWElwSUQwK0lIdGNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVWdLaUJ6WTJGc1lYSTdYRzRnSUgwcE8xeHVmVnh1WEc0dktpcGNiaUFxSUZKbGRIVnlibk1nWVNCdVpYY2diV0YwY21sNElIZHBkR2dnZW1WeWJ5QmxiblJ5YVdWeklISmxiVzkyWldRdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJsYkdsdGFXNWhkR1ZhWlhKdmN5aHRPaUJUY0dGeWMyVk5ZWFJ5YVhncElIdGNiaUFnWTI5dWMzUWdlbVZ5YjBsdVpHbGpaWE1nUFNCdVpYY2dVMlYwS0NrN1hHNGdJR052Ym5OMElIWmhiSFZsY3lBOUlHMHVaMlYwVm1Gc2RXVnpLQ2s3WEc0Z0lHTnZibk4wSUhKdmQzTWdQU0J0TG1kbGRGSnZkM01vS1R0Y2JpQWdZMjl1YzNRZ1kyOXNjeUE5SUcwdVoyVjBRMjlzY3lncE8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhaaGJIVmxjeTVzWlc1bmRHZzdJR2tyS3lrZ2UxeHVJQ0FnSUdsbUlDaDJZV3gxWlhOYmFWMGdQVDA5SURBcFhHNGdJQ0FnSUNCNlpYSnZTVzVrYVdObGN5NWhaR1FvYVNrN1hHNGdJSDFjYmlBZ1kyOXVjM1FnY21WdGIzWmxRbmxhWlhKdlNXNWtaWGdnUFNBb1h6b2dZVzU1TENCcGJtUmxlRG9nYm5WdFltVnlLU0E5UGlBaGVtVnliMGx1WkdsalpYTXVhR0Z6S0dsdVpHVjRLVHRjYmlBZ1kyOXVjM1FnYm1WNGRGWmhiSFZsY3lBOUlIWmhiSFZsY3k1bWFXeDBaWElvY21WdGIzWmxRbmxhWlhKdlNXNWtaWGdwTzF4dUlDQmpiMjV6ZENCdVpYaDBVbTkzY3lBOUlISnZkM011Wm1sc2RHVnlLSEpsYlc5MlpVSjVXbVZ5YjBsdVpHVjRLVHRjYmlBZ1kyOXVjM1FnYm1WNGRFTnZiSE1nUFNCamIyeHpMbVpwYkhSbGNpaHlaVzF2ZG1WQ2VWcGxjbTlKYm1SbGVDazdYRzVjYmlBZ2NtVjBkWEp1SUc1bGR5QlRjR0Z5YzJWTllYUnlhWGdvYm1WNGRGSnZkM01zSUc1bGVIUkRiMnh6TENCdVpYaDBWbUZzZFdWekxDQnRMbWRsZEVScGJYTW9LU2s3WEc1OVhHNWNiaThxS2x4dUlDb2dUbTl5YldGc2FYcGhkR2x2YmlCdlppQmhJSE53WVhKelpTQnRZWFJ5YVhndVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ1YjNKdFlXeHBlbVVvYlRvZ1UzQmhjbk5sVFdGMGNtbDRMQ0J1YjNKdFZIbHdaU0E5SUU1dmNtMVVlWEJsTG13eUtTQjdYRzRnSUdOdmJuTjBJRzV2Y20xR2JpQTlJRzV2Y20xR2JuTmJibTl5YlZSNWNHVmRPMXh1WEc0Z0lHTnZibk4wSUdOdmJITkNlVkp2ZHlBOUlHNWxkeUJOWVhBOGJuVnRZbVZ5TENCdWRXMWlaWEpiWFQ0b0tUdGNiaUFnYlM1bWIzSkZZV05vS0NoZkxDQnliM2NzSUdOdmJDa2dQVDRnZTF4dUlDQWdJR052Ym5OMElHTnZiSE1nUFNCamIyeHpRbmxTYjNjdVoyVjBLSEp2ZHlrZ2ZId2dXMTA3WEc0Z0lDQWdZMjlzY3k1d2RYTm9LR052YkNrN1hHNGdJQ0FnWTI5c2MwSjVVbTkzTG5ObGRDaHliM2NzSUdOdmJITXBPMXh1SUNCOUtUdGNibHh1SUNCamIyNXpkQ0J1WlhoMFRXRjBjbWw0SUQwZ2JtVjNJRk53WVhKelpVMWhkSEpwZUNoYlhTd2dXMTBzSUZ0ZExDQnRMbWRsZEVScGJYTW9LU2s3WEc1Y2JpQWdabTl5SUNoamIyNXpkQ0J5YjNjZ2IyWWdZMjlzYzBKNVVtOTNMbXRsZVhNb0tTa2dlMXh1SUNBZ0lHTnZibk4wSUdOdmJITWdQU0JqYjJ4elFubFNiM2N1WjJWMEtISnZkeWtoTG5OdmNuUW9LVHRjYmx4dUlDQWdJR052Ym5OMElIWmhiSE1nUFNCamIyeHpMbTFoY0Nnb1kyOXNLU0E5UGlCdExtZGxkQ2h5YjNjc0lHTnZiQ2twTzF4dUlDQWdJR052Ym5OMElHNXZjbTBnUFNCdWIzSnRSbTRvZG1Gc2N5azdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnViM0p0TG14bGJtZDBhRHNnYVNzcktWeHVJQ0FnSUNBZ2JtVjRkRTFoZEhKcGVDNXpaWFFvY205M0xDQmpiMnh6VzJsZExDQnViM0p0VzJsZEtUdGNiaUFnZlZ4dVhHNGdJSEpsZEhWeWJpQnVaWGgwVFdGMGNtbDRPMXh1ZlZ4dVhHNHZLaXBjYmlBcUlGWmxZM1J2Y2lCdWIzSnRZV3hwZW1GMGFXOXVJR1oxYm1OMGFXOXVjMXh1SUNvdlhHNTBlWEJsSUU1dmNtMUdibk1nUFNCN0lGdHJaWGtnYVc0Z1RtOXliVlI1Y0dWZE9pQW9kam9nYm5WdFltVnlXMTBwSUQwK0lHNTFiV0psY2x0ZElIMDdYRzVqYjI1emRDQnViM0p0Um01ek9pQk9iM0p0Um01eklEMGdlMXh1SUNCYlRtOXliVlI1Y0dVdWJXRjRYVG9nS0hoek9pQnVkVzFpWlhKYlhTa2dQVDRnZTF4dUlDQWdJR3hsZENCdFlYZ2dQU0F0U1c1bWFXNXBkSGs3WEc0Z0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0I0Y3k1c1pXNW5kR2c3SUdrckt5bGNiaUFnSUNBZ0lHMWhlQ0E5SUhoelcybGRJRDRnYldGNElEOGdlSE5iYVYwZ09pQnRZWGc3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdlSE11YldGd0tDaDRLU0E5UGlCNElDOGdiV0Y0S1R0Y2JpQWdmU3hjYmlBZ1cwNXZjbTFVZVhCbExtd3hYVG9nS0hoek9pQnVkVzFpWlhKYlhTa2dQVDRnZTF4dUlDQWdJR3hsZENCemRXMGdQU0F3TzF4dUlDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnZUhNdWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ0lDQnpkVzBnS3owZ2VITmJhVjA3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdlSE11YldGd0tDaDRLU0E5UGlCNElDOGdjM1Z0S1R0Y2JpQWdmU3hjYmlBZ1cwNXZjbTFVZVhCbExtd3lYVG9nS0hoek9pQnVkVzFpWlhKYlhTa2dQVDRnZTF4dUlDQWdJR3hsZENCemRXMGdQU0F3TzF4dUlDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnZUhNdWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ0lDQnpkVzBnS3owZ2VITmJhVjBnS2lvZ01qdGNibHh1SUNBZ0lISmxkSFZ5YmlCNGN5NXRZWEFvS0hncElEMCtJRTFoZEdndWMzRnlkQ2g0SUNvcUlESWdMeUJ6ZFcwcEtUdGNiaUFnZlN4Y2JuMDdYRzVjYm1WNGNHOXlkQ0JqYjI1emRDQmxiblZ0SUU1dmNtMVVlWEJsSUh0Y2JpQWdiV0Y0SUQwZ0oyMWhlQ2NzWEc0Z0lHd3hJRDBnSjJ3eEp5eGNiaUFnYkRJZ1BTQW5iREluTEZ4dWZWeHVYRzR2S2lwY2JpQXFJRWhsYkhCbGNpQm1kVzVqZEdsdmJpQm1iM0lnWld4bGJXVnVkQzEzYVhObElHOXdaWEpoZEdsdmJuTXVYRzRnS2k5Y2JtWjFibU4wYVc5dUlHVnNaVzFsYm5SWGFYTmxLRnh1SUNCaE9pQlRjR0Z5YzJWTllYUnlhWGdzWEc0Z0lHSTZJRk53WVhKelpVMWhkSEpwZUN4Y2JpQWdiM0E2SUNoNE9pQnVkVzFpWlhJc0lIazZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlYRzRwT2lCVGNHRnljMlZOWVhSeWFYZ2dlMXh1SUNCamIyNXpkQ0IyYVhOcGRHVmtJRDBnYm1WM0lGTmxkRHh6ZEhKcGJtYytLQ2s3WEc0Z0lHTnZibk4wSUhKdmQzTTZJRzUxYldKbGNsdGRJRDBnVzEwN1hHNGdJR052Ym5OMElHTnZiSE02SUc1MWJXSmxjbHRkSUQwZ1cxMDdYRzRnSUdOdmJuTjBJSFpoYkhNNklHNTFiV0psY2x0ZElEMGdXMTA3WEc1Y2JpQWdZMjl1YzNRZ2IzQmxjbUYwWlNBOUlDaHliM2M2SUc1MWJXSmxjaXdnWTI5c09pQnVkVzFpWlhJcElEMCtJSHRjYmlBZ0lDQnliM2R6TG5CMWMyZ29jbTkzS1R0Y2JpQWdJQ0JqYjJ4ekxuQjFjMmdvWTI5c0tUdGNiaUFnSUNCamIyNXpkQ0J1WlhoMFZtRnNkV1VnUFNCdmNDaGhMbWRsZENoeWIzY3NJR052YkNrc0lHSXVaMlYwS0hKdmR5d2dZMjlzS1NrN1hHNGdJQ0FnZG1Gc2N5NXdkWE5vS0c1bGVIUldZV3gxWlNrN1hHNGdJSDA3WEc0Z0lHTnZibk4wSUhaaGJIVmxjMEVnUFNCaExtZGxkRlpoYkhWbGN5Z3BPMXh1SUNCamIyNXpkQ0J5YjNkelFTQTlJR0V1WjJWMFVtOTNjeWdwTzF4dUlDQmpiMjV6ZENCamIyeHpRU0E5SUdFdVoyVjBRMjlzY3lncE8xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhaaGJIVmxjMEV1YkdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNCamIyNXpkQ0J5YjNjZ1BTQnliM2R6UVZ0cFhUdGNiaUFnSUNCamIyNXpkQ0JqYjJ3Z1BTQmpiMnh6UVZ0cFhUdGNiaUFnSUNCamIyNXpkQ0JyWlhrZ1BTQmdKSHR5YjNkOU9pUjdZMjlzZldBN1hHNGdJQ0FnZG1semFYUmxaQzVoWkdRb2EyVjVLVHRjYmlBZ0lDQnZjR1Z5WVhSbEtISnZkeXdnWTI5c0tUdGNiaUFnZlZ4dVhHNGdJR052Ym5OMElIWmhiSFZsYzBJZ1BTQmlMbWRsZEZaaGJIVmxjeWdwTzF4dUlDQmpiMjV6ZENCeWIzZHpRaUE5SUdJdVoyVjBVbTkzY3lncE8xeHVJQ0JqYjI1emRDQmpiMnh6UWlBOUlHSXVaMlYwUTI5c2N5Z3BPMXh1SUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElIWmhiSFZsYzBJdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQmpiMjV6ZENCeWIzY2dQU0J5YjNkelFsdHBYVHRjYmlBZ0lDQmpiMjV6ZENCamIyd2dQU0JqYjJ4elFsdHBYVHRjYmlBZ0lDQmpiMjV6ZENCclpYa2dQU0JnSkh0eWIzZDlPaVI3WTI5c2ZXQTdYRzRnSUNBZ2FXWWdLSFpwYzJsMFpXUXVhR0Z6S0d0bGVTa3BJR052Ym5ScGJuVmxPMXh1SUNBZ0lHOXdaWEpoZEdVb2NtOTNMQ0JqYjJ3cE8xeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ1pHbHRjeUE5SUZ0aExtNVNiM2R6TENCaExtNURiMnh6WFR0Y2JpQWdjbVYwZFhKdUlHNWxkeUJUY0dGeWMyVk5ZWFJ5YVhnb2NtOTNjeXdnWTI5c2N5d2dkbUZzY3l3Z1pHbHRjeWs3WEc1OVhHNWNiaThxS2x4dUlDb2dTR1ZzY0dWeUlHWjFibU4wYVc5dUlHWnZjaUJuWlhSMGFXNW5JR1JoZEdFc0lHbHVaR2xqWlhNc0lHRnVaQ0JwYm5CMGNpQmhjbkpoZVhNZ1puSnZiU0JoSUhOd1lYSnpaVnh1SUNvZ2JXRjBjbWw0SUhSdklHWnZiR3h2ZHlCamMzSWdiV0YwY21sNElHTnZiblpsYm5ScGIyNXpMaUJUZFhCbGNpQnBibVZtWm1samFXVnVkQ0FvWVc1a0lHdHBibVFnYjJaY2JpQXFJR1JsWm1WaGRITWdkR2hsSUhCMWNuQnZjMlVnYjJZZ2RHaHBjeUJqYjI1MlpXNTBhVzl1S1NCaWRYUWdZU0JzYjNRZ2IyWWdkR2hsSUhCdmNuUmxaQ0J3ZVhSb2IyNGdkSEpsWlZ4dUlDb2djMlZoY21Ob0lHeHZaMmxqSUdSbGNHVnVaSE1nYjI0Z2RHaHBjeUJrWVhSaElHWnZjbTFoZEM1Y2JpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR2RsZEVOVFVpaDRPaUJUY0dGeWMyVk5ZWFJ5YVhncElIdGNiaUFnWTI5dWMzUWdaVzUwY21sbGN6b2dSVzUwY25sYlhTQTlJRnRkTzF4dVhHNGdJSGd1Wm05eVJXRmphQ2dvZG1Gc2RXVXNJSEp2ZHl3Z1kyOXNLU0E5UGlCN1hHNGdJQ0FnWlc1MGNtbGxjeTV3ZFhOb0tIdDJZV3gxWlN3Z2NtOTNMQ0JqYjJ4OUtUdGNiaUFnZlNrN1hHNWNiaUFnWlc1MGNtbGxjeTV6YjNKMEtDaGhMQ0JpS1NBOVBpQjdYRzRnSUNBZ2FXWWdLR0V1Y205M0lEMDlQU0JpTG5KdmR5bGNiaUFnSUNBZ0lISmxkSFZ5YmlCaExtTnZiQ0F0SUdJdVkyOXNPMXh1SUNBZ0lHVnNjMlZjYmlBZ0lDQWdJSEpsZEhWeWJpQmhMbkp2ZHlBdElHSXVjbTkzTzF4dUlDQjlLVHRjYmx4dUlDQmpiMjV6ZENCcGJtUnBZMlZ6T2lCdWRXMWlaWEpiWFNBOUlGdGRPMXh1SUNCamIyNXpkQ0IyWVd4MVpYTTZJRzUxYldKbGNsdGRJRDBnVzEwN1hHNGdJR052Ym5OMElHbHVaSEIwY2pvZ2JuVnRZbVZ5VzEwZ1BTQmJYVHRjYmx4dUlDQnNaWFFnWTNWeWNtVnVkRkp2ZHlBOUlDMHhPMXh1SUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElHVnVkSEpwWlhNdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQmpiMjV6ZENCN2NtOTNMQ0JqYjJ3c0lIWmhiSFZsZlNBOUlHVnVkSEpwWlhOYmFWMDdYRzRnSUNBZ2FXWWdLSEp2ZHlBaFBUMGdZM1Z5Y21WdWRGSnZkeWtnZTF4dUlDQWdJQ0FnWTNWeWNtVnVkRkp2ZHlBOUlISnZkenRjYmlBZ0lDQWdJR2x1WkhCMGNpNXdkWE5vS0drcE8xeHVJQ0FnSUgxY2JpQWdJQ0JwYm1ScFkyVnpMbkIxYzJnb1kyOXNLVHRjYmlBZ0lDQjJZV3gxWlhNdWNIVnphQ2gyWVd4MVpTazdYRzRnSUgxY2JseHVJQ0J5WlhSMWNtNGdlMmx1WkdsalpYTXNJSFpoYkhWbGN5d2dhVzVrY0hSeWZUdGNibjFjYmlKZGZRPT0iLCIvKipcbiAqIEBsaWNlbnNlXG4gKlxuICogQ29weXJpZ2h0IDIwMTkgR29vZ2xlIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqL1xuLyoqXG4gKiBUaGlzIGlzIGEgSmF2YVNjcmlwdCByZWltcGxlbWVudGF0aW9uIG9mIFVNQVAgKG9yaWdpbmFsIGxpY2Vuc2UgYmVsb3cpLCBmcm9tXG4gKiB0aGUgcHl0aG9uIGltcGxlbWVudGF0aW9uIGZvdW5kIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9sbWNpbm5lcy91bWFwLlxuICpcbiAqIEBhdXRob3IgYW5keWNvZW5lbkBnb29nbGUuY29tIChBbmR5IENvZW5lbilcbiAqL1xuLyoqXG4gKiBAbGljZW5zZVxuICogQlNEIDMtQ2xhdXNlIExpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIExlbGFuZCBNY0lubmVzXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dFxuICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6XG4gKlxuICogKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXNcbiAqICAgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuXG4gKlxuICogKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsXG4gKiAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb25cbiAqICAgYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uXG4gKlxuICogKiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzXG4gKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tXG4gKiAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uXG4gKlxuICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyBcIkFTIElTXCJcbiAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEVcbiAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRVxuICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRVxuICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUxcbiAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SXG4gKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUlxuICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSxcbiAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFXG4gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLlxuICovXG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzJztcbmV4cG9ydCBjbGFzcyBGbGF0VHJlZSB7XG4gICAgaHlwZXJwbGFuZXM7XG4gICAgb2Zmc2V0cztcbiAgICBjaGlsZHJlbjtcbiAgICBpbmRpY2VzO1xuICAgIGNvbnN0cnVjdG9yKGh5cGVycGxhbmVzLCBvZmZzZXRzLCBjaGlsZHJlbiwgaW5kaWNlcykge1xuICAgICAgICB0aGlzLmh5cGVycGxhbmVzID0gaHlwZXJwbGFuZXM7XG4gICAgICAgIHRoaXMub2Zmc2V0cyA9IG9mZnNldHM7XG4gICAgICAgIHRoaXMuY2hpbGRyZW4gPSBjaGlsZHJlbjtcbiAgICAgICAgdGhpcy5pbmRpY2VzID0gaW5kaWNlcztcbiAgICB9XG59XG4vKipcbiAqIEJ1aWxkIGEgcmFuZG9tIHByb2plY3Rpb24gZm9yZXN0IHdpdGggYGBuVHJlZXNgYC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1ha2VGb3Jlc3QoZGF0YSwgbk5laWdoYm9ycywgblRyZWVzLCByYW5kb20pIHtcbiAgICBjb25zdCBsZWFmU2l6ZSA9IE1hdGgubWF4KDEwLCBuTmVpZ2hib3JzKTtcbiAgICBjb25zdCB0cmVlcyA9IHV0aWxzXG4gICAgICAgIC5yYW5nZShuVHJlZXMpXG4gICAgICAgIC5tYXAoKF8sIGkpID0+IG1ha2VUcmVlKGRhdGEsIGxlYWZTaXplLCBpLCByYW5kb20pKTtcbiAgICBjb25zdCBmb3Jlc3QgPSB0cmVlcy5tYXAoKHRyZWUpID0+IGZsYXR0ZW5UcmVlKHRyZWUsIGxlYWZTaXplKSk7XG4gICAgcmV0dXJuIGZvcmVzdDtcbn1cbi8qKlxuICogQ29uc3RydWN0IGEgcmFuZG9tIHByb2plY3Rpb24gdHJlZSBiYXNlZCBvbiBgYGRhdGFgYCB3aXRoIGxlYXZlc1xuICogb2Ygc2l6ZSBhdCBtb3N0IGBgbGVhZlNpemVgYFxuICovXG5mdW5jdGlvbiBtYWtlVHJlZShkYXRhLCBsZWFmU2l6ZSA9IDMwLCBuLCByYW5kb20pIHtcbiAgICBjb25zdCBpbmRpY2VzID0gdXRpbHMucmFuZ2UoZGF0YS5sZW5ndGgpO1xuICAgIGNvbnN0IHRyZWUgPSBtYWtlRXVjbGlkZWFuVHJlZShkYXRhLCBpbmRpY2VzLCBsZWFmU2l6ZSwgbiwgcmFuZG9tKTtcbiAgICByZXR1cm4gdHJlZTtcbn1cbmZ1bmN0aW9uIG1ha2VFdWNsaWRlYW5UcmVlKGRhdGEsIGluZGljZXMsIGxlYWZTaXplID0gMzAsIHEsIHJhbmRvbSkge1xuICAgIGlmIChpbmRpY2VzLmxlbmd0aCA+IGxlYWZTaXplKSB7XG4gICAgICAgIGNvbnN0IHNwbGl0UmVzdWx0cyA9IGV1Y2xpZGVhblJhbmRvbVByb2plY3Rpb25TcGxpdChkYXRhLCBpbmRpY2VzLCByYW5kb20pO1xuICAgICAgICBjb25zdCB7IGluZGljZXNMZWZ0LCBpbmRpY2VzUmlnaHQsIGh5cGVycGxhbmUsIG9mZnNldCB9ID0gc3BsaXRSZXN1bHRzO1xuICAgICAgICBjb25zdCBsZWZ0Q2hpbGQgPSBtYWtlRXVjbGlkZWFuVHJlZShkYXRhLCBpbmRpY2VzTGVmdCwgbGVhZlNpemUsIHEgKyAxLCByYW5kb20pO1xuICAgICAgICBjb25zdCByaWdodENoaWxkID0gbWFrZUV1Y2xpZGVhblRyZWUoZGF0YSwgaW5kaWNlc1JpZ2h0LCBsZWFmU2l6ZSwgcSArIDEsIHJhbmRvbSk7XG4gICAgICAgIGNvbnN0IG5vZGUgPSB7IGxlZnRDaGlsZCwgcmlnaHRDaGlsZCwgaXNMZWFmOiBmYWxzZSwgaHlwZXJwbGFuZSwgb2Zmc2V0IH07XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHsgaW5kaWNlcywgaXNMZWFmOiB0cnVlIH07XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbn1cbi8qKlxuICogR2l2ZW4gYSBzZXQgb2YgYGBpbmRpY2VzYGAgZm9yIGRhdGEgcG9pbnRzIGZyb20gYGBkYXRhYGAsIGNyZWF0ZVxuICogYSByYW5kb20gaHlwZXJwbGFuZSB0byBzcGxpdCB0aGUgZGF0YSwgcmV0dXJuaW5nIHR3byBhcnJheXMgaW5kaWNlc1xuICogdGhhdCBmYWxsIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBoeXBlcnBsYW5lLiBUaGlzIGlzIHRoZSBiYXNpcyBmb3IgYVxuICogcmFuZG9tIHByb2plY3Rpb24gdHJlZSwgd2hpY2ggc2ltcGx5IHVzZXMgdGhpcyBzcGxpdHRpbmcgcmVjdXJzaXZlbHkuXG4gKiBUaGlzIHBhcnRpY3VsYXIgc3BsaXQgdXNlcyBldWNsaWRlYW4gZGlzdGFuY2UgdG8gZGV0ZXJtaW5lIHRoZSBoeXBlcnBsYW5lXG4gKiBhbmQgd2hpY2ggc2lkZSBlYWNoIGRhdGEgc2FtcGxlIGZhbGxzIG9uLlxuICovXG5mdW5jdGlvbiBldWNsaWRlYW5SYW5kb21Qcm9qZWN0aW9uU3BsaXQoZGF0YSwgaW5kaWNlcywgcmFuZG9tKSB7XG4gICAgLy9jb25zdCBkaW0gPSAxO1xuICAgIC8vIFNlbGVjdCB0d28gcmFuZG9tIHBvaW50cywgc2V0IHRoZSBoeXBlcnBsYW5lIGJldHdlZW4gdGhlbVxuICAgIGNvbnN0IGxlZnRJbmRleCA9IHV0aWxzLnRhdVJhbmRJbnQoaW5kaWNlcy5sZW5ndGgsIHJhbmRvbSk7XG4gICAgbGV0IHJpZ2h0SW5kZXggPSB1dGlscy50YXVSYW5kSW50KGluZGljZXMubGVuZ3RoLCByYW5kb20pO1xuICAgIHJpZ2h0SW5kZXggKz0gbGVmdEluZGV4ID09PSByaWdodEluZGV4ID8gMSA6IDA7XG4gICAgcmlnaHRJbmRleCA9IHJpZ2h0SW5kZXggJSBpbmRpY2VzLmxlbmd0aDtcbiAgICBjb25zdCBsZWZ0ID0gaW5kaWNlc1tsZWZ0SW5kZXhdO1xuICAgIGNvbnN0IHJpZ2h0ID0gaW5kaWNlc1tyaWdodEluZGV4XTtcbiAgICAvLyBDb21wdXRlIHRoZSBub3JtYWwgdmVjdG9yIHRvIHRoZSBoeXBlcnBsYW5lICh0aGUgdmVjdG9yIGJldHdlZW4gdGhlIHR3b1xuICAgIC8vIHBvaW50cykgYW5kIHRoZSBvZmZzZXQgZnJvbSB0aGUgb3JpZ2luXG4gICAgbGV0IGh5cGVycGxhbmVPZmZzZXQgPSAwO1xuICAgIGxldCBoeXBlcnBsYW5lVmVjdG9yID0gMDtcbiAgICBoeXBlcnBsYW5lVmVjdG9yID0gZGF0YVtsZWZ0XSAtIGRhdGFbcmlnaHRdO1xuICAgIGh5cGVycGxhbmVPZmZzZXQgLT1cbiAgICAgICAgKGh5cGVycGxhbmVWZWN0b3IgKiAoZGF0YVtsZWZ0XSArIGRhdGFbcmlnaHRdKSkgLyAyLjA7XG4gICAgLy8gRm9yIGVhY2ggcG9pbnQgY29tcHV0ZSB0aGUgbWFyZ2luIChwcm9qZWN0IGludG8gbm9ybWFsIHZlY3RvcilcbiAgICAvLyBJZiB3ZSBhcmUgb24gbG93ZXIgc2lkZSBvZiB0aGUgaHlwZXJwbGFuZSBwdXQgaW4gb25lIHBpbGUsIG90aGVyd2lzZVxuICAgIC8vIHB1dCBpdCBpbiB0aGUgb3RoZXIgcGlsZSAoaWYgd2UgaGl0IGh5cGVycGxhbmUgb24gdGhlIG5vc2UsIGZsaXAgYSBjb2luKVxuICAgIGxldCBuTGVmdCA9IDA7XG4gICAgbGV0IG5SaWdodCA9IDA7XG4gICAgY29uc3Qgc2lkZSA9IHV0aWxzLnplcm9zKGluZGljZXMubGVuZ3RoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGluZGljZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbGV0IG1hcmdpbiA9IGh5cGVycGxhbmVPZmZzZXQ7XG4gICAgICAgIG1hcmdpbiArPSBoeXBlcnBsYW5lVmVjdG9yICogZGF0YVtpbmRpY2VzW2ldXTtcbiAgICAgICAgaWYgKG1hcmdpbiA9PT0gMCkge1xuICAgICAgICAgICAgc2lkZVtpXSA9IHV0aWxzLnRhdVJhbmRJbnQoMiwgcmFuZG9tKTtcbiAgICAgICAgICAgIGlmIChzaWRlW2ldID09PSAwKVxuICAgICAgICAgICAgICAgIG5MZWZ0ICs9IDE7XG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgblJpZ2h0ICs9IDE7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAobWFyZ2luID4gMCkge1xuICAgICAgICAgICAgc2lkZVtpXSA9IDA7XG4gICAgICAgICAgICBuTGVmdCArPSAxO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgc2lkZVtpXSA9IDE7XG4gICAgICAgICAgICBuUmlnaHQgKz0gMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBOb3cgdGhhdCB3ZSBoYXZlIHRoZSBjb3VudHMsIGFsbG9jYXRlIGFycmF5c1xuICAgIGNvbnN0IGluZGljZXNMZWZ0ID0gdXRpbHMuemVyb3MobkxlZnQpO1xuICAgIGNvbnN0IGluZGljZXNSaWdodCA9IHV0aWxzLnplcm9zKG5SaWdodCk7XG4gICAgLy8gUG9wdWxhdGUgdGhlIGFycmF5cyB3aXRoIGluZGljZXMgYWNjb3JkaW5nIHRvIHdoaWNoIHNpZGUgdGhleSBmZWxsIG9uXG4gICAgbkxlZnQgPSAwO1xuICAgIG5SaWdodCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaWRlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChzaWRlW2ldID09PSAwKSB7XG4gICAgICAgICAgICBpbmRpY2VzTGVmdFtuTGVmdF0gPSBpbmRpY2VzW2ldO1xuICAgICAgICAgICAgbkxlZnQgKz0gMTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGluZGljZXNSaWdodFtuUmlnaHRdID0gaW5kaWNlc1tpXTtcbiAgICAgICAgICAgIG5SaWdodCArPSAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIGluZGljZXNMZWZ0LFxuICAgICAgICBpbmRpY2VzUmlnaHQsXG4gICAgICAgIGh5cGVycGxhbmU6IGh5cGVycGxhbmVWZWN0b3IsXG4gICAgICAgIG9mZnNldDogaHlwZXJwbGFuZU9mZnNldCxcbiAgICB9O1xufVxuZnVuY3Rpb24gZmxhdHRlblRyZWUodHJlZSwgbGVhZlNpemUpIHtcbiAgICBjb25zdCBuTm9kZXMgPSBudW1Ob2Rlcyh0cmVlKTtcbiAgICBjb25zdCBuTGVhdmVzID0gbnVtTGVhdmVzKHRyZWUpO1xuICAgIC8vIFRPRE86IFZlcmlmeSB0aGF0IHNwYXJzZSBjb2RlIGlzIG5vdCByZWxldmFudC4uLlxuICAgIGNvbnN0IGh5cGVycGxhbmVzID0gdXRpbHNcbiAgICAgICAgLnJhbmdlKG5Ob2RlcylcbiAgICAgICAgLm1hcCgoKSA9PiB0cmVlLmh5cGVycGxhbmUgPyAxIDogMCk7XG4gICAgY29uc3Qgb2Zmc2V0cyA9IHV0aWxzLnplcm9zKG5Ob2Rlcyk7XG4gICAgY29uc3QgY2hpbGRyZW4gPSB1dGlscy5yYW5nZShuTm9kZXMpLm1hcCgoKSA9PiBbLTEsIC0xXSk7XG4gICAgY29uc3QgaW5kaWNlcyA9IHV0aWxzXG4gICAgICAgIC5yYW5nZShuTGVhdmVzKVxuICAgICAgICAubWFwKCgpID0+IHV0aWxzLnJhbmdlKGxlYWZTaXplKS5tYXAoKCkgPT4gLTEpKTtcbiAgICByZWN1cnNpdmVGbGF0dGVuKHRyZWUsIGh5cGVycGxhbmVzLCBvZmZzZXRzLCBjaGlsZHJlbiwgaW5kaWNlcywgMCwgMCk7XG4gICAgcmV0dXJuIG5ldyBGbGF0VHJlZShoeXBlcnBsYW5lcywgb2Zmc2V0cywgY2hpbGRyZW4sIGluZGljZXMpO1xufVxuZnVuY3Rpb24gcmVjdXJzaXZlRmxhdHRlbih0cmVlLCBoeXBlcnBsYW5lcywgb2Zmc2V0cywgY2hpbGRyZW4sIGluZGljZXMsIG5vZGVOdW0sIGxlYWZOdW0pIHtcbiAgICBpZiAodHJlZS5pc0xlYWYpIHtcbiAgICAgICAgY2hpbGRyZW5bbm9kZU51bV1bMF0gPSAtbGVhZk51bTtcbiAgICAgICAgLy8gVE9ETzogVHJpcGxlIGNoZWNrIHRoaXMgb3BlcmF0aW9uIGNvcnJlc3BvbmRzIHRvXG4gICAgICAgIC8vIGluZGljZXNbbGVhZk51bSA6IHRyZWUuaW5kaWNlcy5zaGFwZVswXV0gPSB0cmVlLmluZGljZXNcbiAgICAgICAgaW5kaWNlc1tsZWFmTnVtXS5zcGxpY2UoMCwgdHJlZS5pbmRpY2VzLmxlbmd0aCwgLi4udHJlZS5pbmRpY2VzKTtcbiAgICAgICAgbGVhZk51bSArPSAxO1xuICAgICAgICByZXR1cm4geyBub2RlTnVtLCBsZWFmTnVtIH07XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgICBoeXBlcnBsYW5lc1tub2RlTnVtXSA9IHRyZWUuaHlwZXJwbGFuZTtcbiAgICAgICAgb2Zmc2V0c1tub2RlTnVtXSA9IHRyZWUub2Zmc2V0O1xuICAgICAgICBjaGlsZHJlbltub2RlTnVtXVswXSA9IG5vZGVOdW0gKyAxO1xuICAgICAgICBjb25zdCBvbGROb2RlTnVtID0gbm9kZU51bTtcbiAgICAgICAgbGV0IHJlcyA9IHJlY3Vyc2l2ZUZsYXR0ZW4odHJlZS5sZWZ0Q2hpbGQsIGh5cGVycGxhbmVzLCBvZmZzZXRzLCBjaGlsZHJlbiwgaW5kaWNlcywgbm9kZU51bSArIDEsIGxlYWZOdW0pO1xuICAgICAgICBub2RlTnVtID0gcmVzLm5vZGVOdW07XG4gICAgICAgIGxlYWZOdW0gPSByZXMubGVhZk51bTtcbiAgICAgICAgY2hpbGRyZW5bb2xkTm9kZU51bV1bMV0gPSBub2RlTnVtICsgMTtcbiAgICAgICAgcmVzID0gcmVjdXJzaXZlRmxhdHRlbih0cmVlLnJpZ2h0Q2hpbGQsIGh5cGVycGxhbmVzLCBvZmZzZXRzLCBjaGlsZHJlbiwgaW5kaWNlcywgbm9kZU51bSArIDEsIGxlYWZOdW0pO1xuICAgICAgICByZXR1cm4geyBub2RlTnVtOiByZXMubm9kZU51bSwgbGVhZk51bTogcmVzLmxlYWZOdW0gfTtcbiAgICB9XG59XG5mdW5jdGlvbiBudW1Ob2Rlcyh0cmVlKSB7XG4gICAgaWYgKHRyZWUuaXNMZWFmKVxuICAgICAgICByZXR1cm4gMTtcbiAgICBlbHNlXG4gICAgICAgIHJldHVybiAxICsgbnVtTm9kZXModHJlZS5sZWZ0Q2hpbGQpICsgbnVtTm9kZXModHJlZS5yaWdodENoaWxkKTtcbn1cbmZ1bmN0aW9uIG51bUxlYXZlcyh0cmVlKSB7XG4gICAgaWYgKHRyZWUuaXNMZWFmKVxuICAgICAgICByZXR1cm4gMTtcbiAgICBlbHNlXG4gICAgICAgIHJldHVybiBudW1MZWF2ZXModHJlZS5sZWZ0Q2hpbGQpICsgbnVtTGVhdmVzKHRyZWUucmlnaHRDaGlsZCk7XG59XG4vKipcbiAqIEdlbmVyYXRlIGFuIGFycmF5IG9mIHNldHMgb2YgY2FuZGlkYXRlIG5lYXJlc3QgbmVpZ2hib3JzIGJ5XG4gKiBjb25zdHJ1Y3RpbmcgYSByYW5kb20gcHJvamVjdGlvbiBmb3Jlc3QgYW5kIHRha2luZyB0aGUgbGVhdmVzIG9mIGFsbCB0aGVcbiAqIHRyZWVzLiBBbnkgZ2l2ZW4gdHJlZSBoYXMgbGVhdmVzIHRoYXQgYXJlIGEgc2V0IG9mIHBvdGVudGlhbCBuZWFyZXN0XG4gKiBuZWlnaGJvcnMuIEdpdmVuIGVub3VnaCB0cmVlcyB0aGUgc2V0IG9mIGFsbCBzdWNoIGxlYXZlcyBnaXZlcyBhIGdvb2RcbiAqIGxpa2VsaWhvb2Qgb2YgZ2V0dGluZyBhIGdvb2Qgc2V0IG9mIG5lYXJlc3QgbmVpZ2hib3JzIGluIGNvbXBvc2l0ZS4gU2luY2VcbiAqIHN1Y2ggYSByYW5kb20gcHJvamVjdGlvbiBmb3Jlc3QgaXMgaW5leHBlbnNpdmUgdG8gY29tcHV0ZSwgdGhpcyBjYW4gYmUgYVxuICogdXNlZnVsIG1lYW5zIG9mIHNlZWRpbmcgb3RoZXIgbmVhcmVzdCBuZWlnaGJvciBhbGdvcml0aG1zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZUxlYWZBcnJheShycEZvcmVzdCkge1xuICAgIGlmIChycEZvcmVzdC5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IG91dHB1dCA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IHRyZWUgb2YgcnBGb3Jlc3QpXG4gICAgICAgICAgICBvdXRwdXQucHVzaCguLi50cmVlLmluZGljZXMpO1xuICAgICAgICByZXR1cm4gb3V0cHV0O1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIFtbLTFdXTtcbiAgICB9XG59XG4vKipcbiAqIFNlbGVjdHMgdGhlIHNpZGUgb2YgdGhlIHRyZWUgdG8gc2VhcmNoIGR1cmluZyBmbGF0IHRyZWUgc2VhcmNoLlxuICovXG5mdW5jdGlvbiBzZWxlY3RTaWRlKGh5cGVycGxhbmUsIG9mZnNldCwgcG9pbnQsIHJhbmRvbSkge1xuICAgIGxldCBtYXJnaW4gPSBvZmZzZXQ7XG4gICAgbWFyZ2luICs9IGh5cGVycGxhbmUgKiBwb2ludDtcbiAgICBpZiAobWFyZ2luID09PSAwKSB7XG4gICAgICAgIGNvbnN0IHNpZGUgPSB1dGlscy50YXVSYW5kSW50KDIsIHJhbmRvbSk7XG4gICAgICAgIHJldHVybiBzaWRlO1xuICAgIH1cbiAgICBlbHNlIGlmIChtYXJnaW4gPiAwKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxufVxuLyoqXG4gKiBTZWFyY2hlcyBhIGZsYXR0ZW5lZCBycC10cmVlIGZvciBhIHBvaW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VhcmNoRmxhdFRyZWUocG9pbnQsIHRyZWUsIHJhbmRvbSkge1xuICAgIGxldCBub2RlID0gMDtcbiAgICB3aGlsZSAodHJlZS5jaGlsZHJlbltub2RlXVswXSA+IDApIHtcbiAgICAgICAgY29uc3Qgc2lkZSA9IHNlbGVjdFNpZGUodHJlZS5oeXBlcnBsYW5lc1tub2RlXSwgdHJlZS5vZmZzZXRzW25vZGVdLCBwb2ludCwgcmFuZG9tKTtcbiAgICAgICAgaWYgKHNpZGUgPT09IDApXG4gICAgICAgICAgICBub2RlID0gdHJlZS5jaGlsZHJlbltub2RlXVswXTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgbm9kZSA9IHRyZWUuY2hpbGRyZW5bbm9kZV1bMV07XG4gICAgfVxuICAgIGNvbnN0IGluZGV4ID0gLTEgKiB0cmVlLmNoaWxkcmVuW25vZGVdWzBdO1xuICAgIHJldHVybiB0cmVlLmluZGljZXNbaW5kZXhdO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pZEhKbFpTNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW5SeVpXVXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN096czdPenM3T3pzN096czdPenM3TzBkQmFVSkhPMEZCUlVnN096czdPMGRCUzBjN1FVRkZTRHM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3p0SFFTdENSenRCUVVWSUxFOUJRVThzUzBGQlN5eExRVUZMTEUxQlFVMHNVMEZCVXl4RFFVRkRPMEZCWldwRExFMUJRVTBzVDBGQlR5eFJRVUZSTzBsQlJWWTdTVUZEUVR0SlFVTkJPMGxCUTBFN1NVRktWQ3haUVVOVExGZEJRWEZDTEVWQlEzSkNMRTlCUVdsQ0xFVkJRMnBDTEZGQlFXOUNMRVZCUTNCQ0xFOUJRVzFDTzFGQlNHNUNMR2RDUVVGWExFZEJRVmdzVjBGQlZ5eERRVUZWTzFGQlEzSkNMRmxCUVU4c1IwRkJVQ3hQUVVGUExFTkJRVlU3VVVGRGFrSXNZVUZCVVN4SFFVRlNMRkZCUVZFc1EwRkJXVHRSUVVOd1FpeFpRVUZQTEVkQlFWQXNUMEZCVHl4RFFVRlpPMGxCUTNwQ0xFTkJRVU03UTBGRFREdEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxGVkJRVlVzUTBGRGVFSXNTVUZCV1N4RlFVTmFMRlZCUVd0Q0xFVkJRMnhDTEUxQlFXTXNSVUZEWkN4TlFVRm5RanRKUVVWb1FpeE5RVUZOTEZGQlFWRXNSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUlVGQlJTeFZRVUZWTEVOQlFVTXNRMEZCUXp0SlFVVXhReXhOUVVGTkxFdEJRVXNzUjBGQlJ5eExRVUZMTzFOQlEyaENMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03VTBGRFlpeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RlFVRkZMRkZCUVZFc1JVRkJSU3hEUVVGRExFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjBSQ3hOUVVGTkxFMUJRVTBzUjBGQlJ5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1NVRkJTU3hGUVVGRkxFVkJRVVVzUTBGQlF5eFhRVUZYTEVOQlFVTXNTVUZCU1N4RlFVRkZMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmFFVXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3pzN1IwRkhSenRCUVVOSUxGTkJRVk1zVVVGQlVTeERRVU5tTEVsQlFWa3NSVUZEV2l4UlFVRlJMRWRCUVVjc1JVRkJSU3hGUVVOaUxFTkJRVk1zUlVGRFZDeE5RVUZuUWp0SlFVVm9RaXhOUVVGTkxFOUJRVThzUjBGQlJ5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVU42UXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhwUWtGQmFVSXNRMEZCUXl4SlFVRkpMRVZCUVVVc1QwRkJUeXhGUVVGRkxGRkJRVkVzUlVGQlJTeERRVUZETEVWQlFVVXNUVUZCVFN4RFFVRkRMRU5CUVVNN1NVRkRia1VzVDBGQlR5eEpRVUZKTEVOQlFVTTdRVUZEWkN4RFFVRkRPMEZCUlVRc1UwRkJVeXhwUWtGQmFVSXNRMEZEZUVJc1NVRkJXU3hGUVVOYUxFOUJRV2xDTEVWQlEycENMRkZCUVZFc1IwRkJSeXhGUVVGRkxFVkJRMklzUTBGQlV5eEZRVU5VTEUxQlFXZENPMGxCUldoQ0xFbEJRVWtzVDBGQlR5eERRVUZETEUxQlFVMHNSMEZCUnl4UlFVRlJMRVZCUVVVN1VVRkROMElzVFVGQlRTeFpRVUZaTEVkQlFVY3NPRUpCUVRoQ0xFTkJRVU1zU1VGQlNTeEZRVUZGTEU5QlFVOHNSVUZCUlN4TlFVRk5MRU5CUVVNc1EwRkJRenRSUVVNelJTeE5RVUZOTEVWQlFVTXNWMEZCVnl4RlFVRkZMRmxCUVZrc1JVRkJSU3hWUVVGVkxFVkJRVVVzVFVGQlRTeEZRVUZETEVkQlFVY3NXVUZCV1N4RFFVRkRPMUZCUlhKRkxFMUJRVTBzVTBGQlV5eEhRVUZITEdsQ1FVRnBRaXhEUVVOcVF5eEpRVUZKTEVWQlEwb3NWMEZCVnl4RlFVTllMRkZCUVZFc1JVRkRVaXhEUVVGRExFZEJRVWNzUTBGQlF5eEZRVU5NTEUxQlFVMHNRMEZEVUN4RFFVRkRPMUZCUTBZc1RVRkJUU3hWUVVGVkxFZEJRVWNzYVVKQlFXbENMRU5CUTJ4RExFbEJRVWtzUlVGRFNpeFpRVUZaTEVWQlExb3NVVUZCVVN4RlFVTlNMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRMHdzVFVGQlRTeERRVU5RTEVOQlFVTTdVVUZGUml4TlFVRk5MRWxCUVVrc1IwRkJSeXhGUVVGRExGTkJRVk1zUlVGQlJTeFZRVUZWTEVWQlFVVXNUVUZCVFN4RlFVRkZMRXRCUVVzc1JVRkJSU3hWUVVGVkxFVkJRVVVzVFVGQlRTeEZRVUZETEVOQlFVTTdVVUZEZUVVc1QwRkJUeXhKUVVGSkxFTkJRVU03UzBGRFlqdFRRVUZOTzFGQlEwd3NUVUZCVFN4SlFVRkpMRWRCUVVjc1JVRkJReXhQUVVGUExFVkJRVVVzVFVGQlRTeEZRVUZGTEVsQlFVa3NSVUZCUXl4RFFVRkRPMUZCUTNKRExFOUJRVThzU1VGQlNTeERRVUZETzB0QlEySTdRVUZEU0N4RFFVRkRPMEZCUlVRN096czdPenM3UjBGUFJ6dEJRVU5JTEZOQlFWTXNPRUpCUVRoQ0xFTkJRM0pETEVsQlFWa3NSVUZEV2l4UFFVRnBRaXhGUVVOcVFpeE5RVUZuUWp0SlFVVm9RaXhuUWtGQlowSTdTVUZGYUVJc05FUkJRVFJFTzBsQlF6VkVMRTFCUVUwc1UwRkJVeXhIUVVGSExFdEJRVXNzUTBGQlF5eFZRVUZWTEVOQlFVTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVU16UkN4SlFVRkpMRlZCUVZVc1IwRkJSeXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZETEU5QlFVOHNRMEZCUXl4TlFVRk5MRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGRE1VUXNWVUZCVlN4SlFVRkpMRk5CUVZNc1MwRkJTeXhWUVVGVkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJReTlETEZWQlFWVXNSMEZCUnl4VlFVRlZMRWRCUVVjc1QwRkJUeXhEUVVGRExFMUJRVTBzUTBGQlF6dEpRVU42UXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTTdTVUZEYUVNc1RVRkJUU3hMUVVGTExFZEJRVWNzVDBGQlR5eERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRPMGxCUld4RExEQkZRVUV3UlR0SlFVTXhSU3g1UTBGQmVVTTdTVUZEZWtNc1NVRkJTU3huUWtGQlowSXNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRla0lzU1VGQlNTeG5Ra0ZCWjBJc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGSGVrSXNaMEpCUVdkQ0xFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dEpRVU0xUXl4blFrRkJaMEk3VVVGRFpDeERRVUZETEdkQ1FVRm5RaXhIUVVGSExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NSMEZCUnl4RFFVRkRPMGxCUjNoRUxHbEZRVUZwUlR0SlFVTnFSU3gxUlVGQmRVVTdTVUZEZGtVc01rVkJRVEpGTzBsQlF6TkZMRWxCUVVrc1MwRkJTeXhIUVVGSExFTkJRVU1zUTBGQlF6dEpRVU5rTEVsQlFVa3NUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVObUxFMUJRVTBzU1VGQlNTeEhRVUZITEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBsQlEzcERMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFGQlEzWkRMRWxCUVVrc1RVRkJUU3hIUVVGSExHZENRVUZuUWl4RFFVRkRPMUZCUlRsQ0xFMUJRVTBzU1VGQlNTeG5Ra0ZCWjBJc1IwRkJSeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkZPVU1zU1VGQlNTeE5RVUZOTEV0QlFVc3NRMEZCUXl4RlFVRkZPMWxCUTJoQ0xFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zUlVGQlJTeE5RVUZOTEVOQlFVTXNRMEZCUXp0WlFVTjBReXhKUVVGSkxFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNTMEZCU3l4RFFVRkRPMmRDUVVObUxFdEJRVXNzU1VGQlNTeERRVUZETEVOQlFVTTdPMmRDUVVWWUxFMUJRVTBzU1VGQlNTeERRVUZETEVOQlFVTTdVMEZEWmp0aFFVRk5MRWxCUVVrc1RVRkJUU3hIUVVGSExFTkJRVU1zUlVGQlJUdFpRVU55UWl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFsQlExb3NTMEZCU3l4SlFVRkpMRU5CUVVNc1EwRkJRenRUUVVOYU8yRkJRVTA3V1VGRFRDeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRMW9zVFVGQlRTeEpRVUZKTEVOQlFVTXNRMEZCUXp0VFFVTmlPMHRCUTBZN1NVRkZSQ3dyUTBGQkswTTdTVUZETDBNc1RVRkJUU3hYUVVGWExFZEJRVWNzUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRKUVVOMlF5eE5RVUZOTEZsQlFWa3NSMEZCUnl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBsQlJYcERMSGRGUVVGM1JUdEpRVU40UlN4TFFVRkxMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMVlzVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTllMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFGQlEzQkRMRWxCUVVrc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNSVUZCUlR0WlFVTnFRaXhYUVVGWExFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRMmhETEV0QlFVc3NTVUZCU1N4RFFVRkRMRU5CUVVNN1UwRkRXanRoUVVGTk8xbEJRMHdzV1VGQldTeERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5zUXl4TlFVRk5MRWxCUVVrc1EwRkJReXhEUVVGRE8xTkJRMkk3UzBGRFJqdEpRVVZFTEU5QlFVODdVVUZEVEN4WFFVRlhPMUZCUTFnc1dVRkJXVHRSUVVOYUxGVkJRVlVzUlVGQlJTeG5Ra0ZCWjBJN1VVRkROVUlzVFVGQlRTeEZRVUZGTEdkQ1FVRm5RanRMUVVONlFpeERRVUZETzBGQlEwb3NRMEZCUXp0QlFVVkVMRk5CUVZNc1YwRkJWeXhEUVVGRExFbEJRVGhDTEVWQlFVVXNVVUZCWjBJN1NVRkRia1VzVFVGQlRTeE5RVUZOTEVkQlFVY3NVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wbEJRemxDTEUxQlFVMHNUMEZCVHl4SFFVRkhMRk5CUVZNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVVZvUXl4dFJFRkJiVVE3U1VGRGJrUXNUVUZCVFN4WFFVRlhMRWRCUVVjc1MwRkJTenRUUVVOMFFpeExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRPMU5CUTJJc1IwRkJSeXhEUVVGRExFZEJRVWNzUlVGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkZkRU1zVFVGQlRTeFBRVUZQTEVkQlFVY3NTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVU53UXl4TlFVRk5MRkZCUVZFc1IwRkJSeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU42UkN4TlFVRk5MRTlCUVU4c1IwRkJSeXhMUVVGTE8xTkJRMnhDTEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNN1UwRkRaQ3hIUVVGSExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEyeEVMR2RDUVVGblFpeERRVUZETEVsQlFVa3NSVUZCUlN4WFFVRlhMRVZCUVVVc1QwRkJUeXhGUVVGRkxGRkJRVkVzUlVGQlJTeFBRVUZQTEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRM1JGTEU5QlFVOHNTVUZCU1N4UlFVRlJMRU5CUVVNc1YwRkJWeXhGUVVGRkxFOUJRVThzUlVGQlJTeFJRVUZSTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1FVRkRMMFFzUTBGQlF6dEJRVVZFTEZOQlFWTXNaMEpCUVdkQ0xFTkJRM1pDTEVsQlFUaENMRVZCUXpsQ0xGZEJRWEZDTEVWQlEzSkNMRTlCUVdsQ0xFVkJRMnBDTEZGQlFXOUNMRVZCUTNCQ0xFOUJRVzFDTEVWQlEyNUNMRTlCUVdVc1JVRkRaaXhQUVVGbE8wbEJSV1lzU1VGQlNTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZPMUZCUTJZc1VVRkJVU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1QwRkJUeXhEUVVGRE8xRkJSV2hETEcxRVFVRnRSRHRSUVVOdVJDd3dSRUZCTUVRN1VVRkRNVVFzVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEU5QlFWRXNRMEZCUXl4TlFVRk5MRVZCUVVVc1IwRkJSeXhKUVVGSkxFTkJRVU1zVDBGQlVTeERRVUZETEVOQlFVTTdVVUZEYmtVc1QwRkJUeXhKUVVGSkxFTkJRVU1zUTBGQlF6dFJRVU5pTEU5QlFVOHNSVUZCUXl4UFFVRlBMRVZCUVVVc1QwRkJUeXhGUVVGRExFTkJRVU03UzBGRE0wSTdVMEZCVFR0UlFVTk1MRmRCUVZjc1EwRkJReXhQUVVGUExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNWVUZCVnl4RFFVRkRPMUZCUTNoRExFOUJRVThzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUeXhEUVVGRE8xRkJRMmhETEZGQlFWRXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFBRVUZQTEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTI1RExFMUJRVTBzVlVGQlZTeEhRVUZITEU5QlFVOHNRMEZCUXp0UlFVVXpRaXhKUVVGSkxFZEJRVWNzUjBGQlJ5eG5Ra0ZCWjBJc1EwRkRlRUlzU1VGQlNTeERRVUZETEZOQlFWVXNSVUZEWml4WFFVRlhMRVZCUTFnc1QwRkJUeXhGUVVOUUxGRkJRVkVzUlVGRFVpeFBRVUZQTEVWQlExQXNUMEZCVHl4SFFVRkhMRU5CUVVNc1JVRkRXQ3hQUVVGUExFTkJRMUlzUTBGQlF6dFJRVU5HTEU5QlFVOHNSMEZCUnl4SFFVRkhMRU5CUVVNc1QwRkJUeXhEUVVGRE8xRkJRM1JDTEU5QlFVOHNSMEZCUnl4SFFVRkhMRU5CUVVNc1QwRkJUeXhEUVVGRE8xRkJSWFJDTEZGQlFWRXNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eFBRVUZQTEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUlhSRExFZEJRVWNzUjBGQlJ5eG5Ra0ZCWjBJc1EwRkRjRUlzU1VGQlNTeERRVUZETEZWQlFWY3NSVUZEYUVJc1YwRkJWeXhGUVVOWUxFOUJRVThzUlVGRFVDeFJRVUZSTEVWQlExSXNUMEZCVHl4RlFVTlFMRTlCUVU4c1IwRkJSeXhEUVVGRExFVkJRMWdzVDBGQlR5eERRVU5TTEVOQlFVTTdVVUZEUml4UFFVRlBMRVZCUVVNc1QwRkJUeXhGUVVGRkxFZEJRVWNzUTBGQlF5eFBRVUZQTEVWQlFVVXNUMEZCVHl4RlFVRkZMRWRCUVVjc1EwRkJReXhQUVVGUExFVkJRVU1zUTBGQlF6dExRVU55UkR0QlFVTklMRU5CUVVNN1FVRkZSQ3hUUVVGVExGRkJRVkVzUTBGQlF5eEpRVUU0UWp0SlFVTTVReXhKUVVGSkxFbEJRVWtzUTBGQlF5eE5RVUZOTzFGQlEySXNUMEZCVHl4RFFVRkRMRU5CUVVNN08xRkJSVlFzVDBGQlR5eERRVUZETEVkQlFVY3NVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhUUVVGVkxFTkJRVU1zUjBGQlJ5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRlZCUVZjc1EwRkJReXhEUVVGRE8wRkJRM1JGTEVOQlFVTTdRVUZGUkN4VFFVRlRMRk5CUVZNc1EwRkJReXhKUVVFNFFqdEpRVU12UXl4SlFVRkpMRWxCUVVrc1EwRkJReXhOUVVGTk8xRkJRMklzVDBGQlR5eERRVUZETEVOQlFVTTdPMUZCUlZRc1QwRkJUeXhUUVVGVExFTkJRVU1zU1VGQlNTeERRVUZETEZOQlFWVXNRMEZCUXl4SFFVRkhMRk5CUVZNc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZ5eERRVUZETEVOQlFVTTdRVUZEY0VVc1EwRkJRenRCUVVWRU96czdPenM3T3p0SFFWRkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHRkJRV0VzUTBGQlF5eFJRVUZ2UWp0SlFVTm9SQ3hKUVVGSkxGRkJRVkVzUTBGQlF5eE5RVUZOTEVkQlFVY3NRMEZCUXl4RlFVRkZPMUZCUTNaQ0xFMUJRVTBzVFVGQlRTeEhRVUZsTEVWQlFVVXNRMEZCUXp0UlFVTTVRaXhMUVVGTExFMUJRVTBzU1VGQlNTeEpRVUZKTEZGQlFWRTdXVUZEZWtJc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4UFFVRlJMRU5CUVVNc1EwRkJRenRSUVVWb1F5eFBRVUZQTEUxQlFVMHNRMEZCUXp0TFFVTm1PMU5CUVUwN1VVRkRUQ3hQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1MwRkRaanRCUVVOSUxFTkJRVU03UVVGRlJEczdSMEZGUnp0QlFVTklMRk5CUVZNc1ZVRkJWU3hEUVVOcVFpeFZRVUZyUWl4RlFVTnNRaXhOUVVGakxFVkJRMlFzUzBGQllTeEZRVU5pTEUxQlFXZENPMGxCUldoQ0xFbEJRVWtzVFVGQlRTeEhRVUZITEUxQlFVMHNRMEZCUXp0SlFVVndRaXhOUVVGTkxFbEJRVWtzVlVGQlZTeEhRVUZITEV0QlFVc3NRMEZCUXp0SlFVYzNRaXhKUVVGSkxFMUJRVTBzUzBGQlN5eERRVUZETEVWQlFVVTdVVUZEYUVJc1RVRkJUU3hKUVVGSkxFZEJRVWNzUzBGQlN5eERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03VVVGRGVrTXNUMEZCVHl4SlFVRkpMRU5CUVVNN1MwRkRZanRUUVVGTkxFbEJRVWtzVFVGQlRTeEhRVUZITEVOQlFVTXNSVUZCUlR0UlFVTnlRaXhQUVVGUExFTkJRVU1zUTBGQlF6dExRVU5XTzFOQlFVMDdVVUZEVEN4UFFVRlBMRU5CUVVNc1EwRkJRenRMUVVOV08wRkJRMGdzUTBGQlF6dEJRVVZFT3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHTkJRV01zUTBGRE5VSXNTMEZCWVN4RlFVTmlMRWxCUVdNc1JVRkRaQ3hOUVVGblFqdEpRVVZvUWl4SlFVRkpMRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRFlpeFBRVUZQTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZPMUZCUTJwRExFMUJRVTBzU1VGQlNTeEhRVUZITEZWQlFWVXNRMEZEY2tJc1NVRkJTU3hEUVVGRExGZEJRVmNzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZEZEVJc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZEYkVJc1MwRkJTeXhGUVVOTUxFMUJRVTBzUTBGRFVDeERRVUZETzFGQlEwWXNTVUZCU1N4SlFVRkpMRXRCUVVzc1EwRkJRenRaUVVOYUxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZET3p0WlFVVTVRaXhKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dExRVU5xUXp0SlFVVkVMRTFCUVUwc1MwRkJTeXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZETVVNc1QwRkJUeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMEZCUXpkQ0xFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lJdktpcGNiaUFxSUVCc2FXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSURJd01Ua2dSMjl2WjJ4bElFeE1ReTRnUVd4c0lGSnBaMmgwY3lCU1pYTmxjblpsWkM1Y2JpQXFYRzRnS2lCTWFXTmxibk5sWkNCMWJtUmxjaUIwYUdVZ1FYQmhZMmhsSUV4cFkyVnVjMlVzSUZabGNuTnBiMjRnTWk0d0lDaDBhR1VnWENKTWFXTmxibk5sWENJcE8xeHVJQ29nZVc5MUlHMWhlU0J1YjNRZ2RYTmxJSFJvYVhNZ1ptbHNaU0JsZUdObGNIUWdhVzRnWTI5dGNHeHBZVzVqWlNCM2FYUm9JSFJvWlNCTWFXTmxibk5sTGx4dUlDb2dXVzkxSUcxaGVTQnZZblJoYVc0Z1lTQmpiM0I1SUc5bUlIUm9aU0JNYVdObGJuTmxJR0YwWEc0Z0tseHVJQ29nSUNBZ0lHaDBkSEE2THk5M2QzY3VZWEJoWTJobExtOXlaeTlzYVdObGJuTmxjeTlNU1VORlRsTkZMVEl1TUZ4dUlDcGNiaUFxSUZWdWJHVnpjeUJ5WlhGMWFYSmxaQ0JpZVNCaGNIQnNhV05oWW14bElHeGhkeUJ2Y2lCaFozSmxaV1FnZEc4Z2FXNGdkM0pwZEdsdVp5d2djMjltZEhkaGNtVmNiaUFxSUdScGMzUnlhV0oxZEdWa0lIVnVaR1Z5SUhSb1pTQk1hV05sYm5ObElHbHpJR1JwYzNSeWFXSjFkR1ZrSUc5dUlHRnVJRndpUVZNZ1NWTmNJaUJDUVZOSlV5eGNiaUFxSUZkSlZFaFBWVlFnVjBGU1VrRk9WRWxGVXlCUFVpQkRUMDVFU1ZSSlQwNVRJRTlHSUVGT1dTQkxTVTVFTENCbGFYUm9aWElnWlhod2NtVnpjeUJ2Y2lCcGJYQnNhV1ZrTGx4dUlDb2dVMlZsSUhSb1pTQk1hV05sYm5ObElHWnZjaUIwYUdVZ2MzQmxZMmxtYVdNZ2JHRnVaM1ZoWjJVZ1oyOTJaWEp1YVc1bklIQmxjbTFwYzNOcGIyNXpJR0Z1WkZ4dUlDb2diR2x0YVhSaGRHbHZibk1nZFc1a1pYSWdkR2hsSUV4cFkyVnVjMlV1WEc0Z0tpQTlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQxY2JpQXFMMXh1WEc0dktpcGNiaUFxSUZSb2FYTWdhWE1nWVNCS1lYWmhVMk55YVhCMElISmxhVzF3YkdWdFpXNTBZWFJwYjI0Z2IyWWdWVTFCVUNBb2IzSnBaMmx1WVd3Z2JHbGpaVzV6WlNCaVpXeHZkeWtzSUdaeWIyMWNiaUFxSUhSb1pTQndlWFJvYjI0Z2FXMXdiR1Z0Wlc1MFlYUnBiMjRnWm05MWJtUWdZWFFnYUhSMGNITTZMeTluYVhSb2RXSXVZMjl0TDJ4dFkybHVibVZ6TDNWdFlYQXVYRzRnS2x4dUlDb2dRR0YxZEdodmNpQmhibVI1WTI5bGJtVnVRR2R2YjJkc1pTNWpiMjBnS0VGdVpIa2dRMjlsYm1WdUtWeHVJQ292WEc1Y2JpOHFLbHh1SUNvZ1FHeHBZMlZ1YzJWY2JpQXFJRUpUUkNBekxVTnNZWFZ6WlNCTWFXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSUNoaktTQXlNREUzTENCTVpXeGhibVFnVFdOSmJtNWxjMXh1SUNvZ1FXeHNJSEpwWjJoMGN5QnlaWE5sY25abFpDNWNiaUFxWEc0Z0tpQlNaV1JwYzNSeWFXSjFkR2x2YmlCaGJtUWdkWE5sSUdsdUlITnZkWEpqWlNCaGJtUWdZbWx1WVhKNUlHWnZjbTF6TENCM2FYUm9JRzl5SUhkcGRHaHZkWFJjYmlBcUlHMXZaR2xtYVdOaGRHbHZiaXdnWVhKbElIQmxjbTFwZEhSbFpDQndjbTkyYVdSbFpDQjBhR0YwSUhSb1pTQm1iMnhzYjNkcGJtY2dZMjl1WkdsMGFXOXVjeUJoY21VZ2JXVjBPbHh1SUNwY2JpQXFJQ29nVW1Wa2FYTjBjbWxpZFhScGIyNXpJRzltSUhOdmRYSmpaU0JqYjJSbElHMTFjM1FnY21WMFlXbHVJSFJvWlNCaFltOTJaU0JqYjNCNWNtbG5hSFFnYm05MGFXTmxMQ0IwYUdselhHNGdLaUFnSUd4cGMzUWdiMllnWTI5dVpHbDBhVzl1Y3lCaGJtUWdkR2hsSUdadmJHeHZkMmx1WnlCa2FYTmpiR0ZwYldWeUxseHVJQ3BjYmlBcUlDb2dVbVZrYVhOMGNtbGlkWFJwYjI1eklHbHVJR0pwYm1GeWVTQm1iM0p0SUcxMWMzUWdjbVZ3Y205a2RXTmxJSFJvWlNCaFltOTJaU0JqYjNCNWNtbG5hSFFnYm05MGFXTmxMRnh1SUNvZ0lDQjBhR2x6SUd4cGMzUWdiMllnWTI5dVpHbDBhVzl1Y3lCaGJtUWdkR2hsSUdadmJHeHZkMmx1WnlCa2FYTmpiR0ZwYldWeUlHbHVJSFJvWlNCa2IyTjFiV1Z1ZEdGMGFXOXVYRzRnS2lBZ0lHRnVaQzl2Y2lCdmRHaGxjaUJ0WVhSbGNtbGhiSE1nY0hKdmRtbGtaV1FnZDJsMGFDQjBhR1VnWkdsemRISnBZblYwYVc5dUxseHVJQ3BjYmlBcUlDb2dUbVZwZEdobGNpQjBhR1VnYm1GdFpTQnZaaUIwYUdVZ1kyOXdlWEpwWjJoMElHaHZiR1JsY2lCdWIzSWdkR2hsSUc1aGJXVnpJRzltSUdsMGMxeHVJQ29nSUNCamIyNTBjbWxpZFhSdmNuTWdiV0Y1SUdKbElIVnpaV1FnZEc4Z1pXNWtiM0p6WlNCdmNpQndjbTl0YjNSbElIQnliMlIxWTNSeklHUmxjbWwyWldRZ1puSnZiVnh1SUNvZ0lDQjBhR2x6SUhOdlpuUjNZWEpsSUhkcGRHaHZkWFFnYzNCbFkybG1hV01nY0hKcGIzSWdkM0pwZEhSbGJpQndaWEp0YVhOemFXOXVMbHh1SUNwY2JpQXFJRlJJU1ZNZ1UwOUdWRmRCVWtVZ1NWTWdVRkpQVmtsRVJVUWdRbGtnVkVoRklFTlBVRmxTU1VkSVZDQklUMHhFUlZKVElFRk9SQ0JEVDA1VVVrbENWVlJQVWxNZ1hDSkJVeUJKVTF3aVhHNGdLaUJCVGtRZ1FVNVpJRVZZVUZKRlUxTWdUMUlnU1UxUVRFbEZSQ0JYUVZKU1FVNVVTVVZUTENCSlRrTk1WVVJKVGtjc0lFSlZWQ0JPVDFRZ1RFbE5TVlJGUkNCVVR5d2dWRWhGWEc0Z0tpQkpUVkJNU1VWRUlGZEJVbEpCVGxSSlJWTWdUMFlnVFVWU1EwaEJUbFJCUWtsTVNWUlpJRUZPUkNCR1NWUk9SVk5USUVaUFVpQkJJRkJCVWxSSlExVk1RVklnVUZWU1VFOVRSU0JCVWtWY2JpQXFJRVJKVTBOTVFVbE5SVVF1SUVsT0lFNVBJRVZXUlU1VUlGTklRVXhNSUZSSVJTQkRUMUJaVWtsSFNGUWdTRTlNUkVWU0lFOVNJRU5QVGxSU1NVSlZWRTlTVXlCQ1JTQk1TVUZDVEVWY2JpQXFJRVpQVWlCQlRsa2dSRWxTUlVOVUxDQkpUa1JKVWtWRFZDd2dTVTVEU1VSRlRsUkJUQ3dnVTFCRlEwbEJUQ3dnUlZoRlRWQk1RVkpaTENCUFVpQkRUMDVUUlZGVlJVNVVTVUZNWEc0Z0tpQkVRVTFCUjBWVElDaEpUa05NVlVSSlRrY3NJRUpWVkNCT1QxUWdURWxOU1ZSRlJDQlVUeXdnVUZKUFExVlNSVTFGVGxRZ1QwWWdVMVZDVTFSSlZGVlVSU0JIVDA5RVV5QlBVbHh1SUNvZ1UwVlNWa2xEUlZNN0lFeFBVMU1nVDBZZ1ZWTkZMQ0JFUVZSQkxDQlBVaUJRVWs5R1NWUlRPeUJQVWlCQ1ZWTkpUa1ZUVXlCSlRsUkZVbEpWVUZSSlQwNHBJRWhQVjBWV1JWSmNiaUFxSUVOQlZWTkZSQ0JCVGtRZ1QwNGdRVTVaSUZSSVJVOVNXU0JQUmlCTVNVRkNTVXhKVkZrc0lGZElSVlJJUlZJZ1NVNGdRMDlPVkZKQlExUXNJRk5VVWtsRFZDQk1TVUZDU1V4SlZGa3NYRzRnS2lCUFVpQlVUMUpVSUNoSlRrTk1WVVJKVGtjZ1RrVkhURWxIUlU1RFJTQlBVaUJQVkVoRlVsZEpVMFVwSUVGU1NWTkpUa2NnU1U0Z1FVNVpJRmRCV1NCUFZWUWdUMFlnVkVoRklGVlRSVnh1SUNvZ1QwWWdWRWhKVXlCVFQwWlVWMEZTUlN3Z1JWWkZUaUJKUmlCQlJGWkpVMFZFSUU5R0lGUklSU0JRVDFOVFNVSkpURWxVV1NCUFJpQlRWVU5JSUVSQlRVRkhSUzVjYmlBcUwxeHVYRzVwYlhCdmNuUWdLaUJoY3lCMWRHbHNjeUJtY205dElDY3VMM1YwYVd4ekp6dGNibWx0Y0c5eWRDQjdVbUZ1Wkc5dFJtNHNJRlpsWTNSdmNuMGdabkp2YlNBbkxpOTFiV0Z3Snp0Y2JseHVMeW9xWEc0Z0tpQlVjbVZsSUdaMWJtTjBhVzl1WVd4cGRIa2dabTl5SUdGd2NISnZlR2x0WVhScGJtY2dibVZoY21WemRDQnVaV2xuYUdKdmNuTmNiaUFxTDF4dWFXNTBaWEptWVdObElGSmhibVJ2YlZCeWIycGxZM1JwYjI1VWNtVmxUbTlrWlNCN1hHNGdJR2x6VEdWaFpqb2dZbTl2YkdWaGJqdGNiaUFnYVc1a2FXTmxjejg2SUc1MWJXSmxjbHRkTzF4dUlDQnNaV1owUTJocGJHUS9PaUJTWVc1a2IyMVFjbTlxWldOMGFXOXVWSEpsWlU1dlpHVTdYRzRnSUhKcFoyaDBRMmhwYkdRL09pQlNZVzVrYjIxUWNtOXFaV04wYVc5dVZISmxaVTV2WkdVN1hHNGdJR2g1Y0dWeWNHeGhibVUvT2lCdWRXMWlaWEk3WEc0Z0lHOW1abk5sZEQ4NklHNTFiV0psY2p0Y2JuMWNibHh1Wlhod2IzSjBJR05zWVhOeklFWnNZWFJVY21WbElIdGNiaUFnWTI5dWMzUnlkV04wYjNJb1hHNGdJQ0FnY0hWaWJHbGpJR2g1Y0dWeWNHeGhibVZ6T2lCdWRXMWlaWEpiWFN4Y2JpQWdJQ0J3ZFdKc2FXTWdiMlptYzJWMGN6b2diblZ0WW1WeVcxMHNYRzRnSUNBZ2NIVmliR2xqSUdOb2FXeGtjbVZ1T2lCdWRXMWlaWEpiWFZ0ZExGeHVJQ0FnSUhCMVlteHBZeUJwYm1ScFkyVnpPaUJ1ZFcxaVpYSmJYVnRkWEc0Z0lDa2dlMzFjYm4xY2JseHVMeW9xWEc0Z0tpQkNkV2xzWkNCaElISmhibVJ2YlNCd2NtOXFaV04wYVc5dUlHWnZjbVZ6ZENCM2FYUm9JR0JnYmxSeVpXVnpZR0F1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnRZV3RsUm05eVpYTjBLRnh1SUNCa1lYUmhPaUJXWldOMGIzSXNYRzRnSUc1T1pXbG5hR0p2Y25NNklHNTFiV0psY2l4Y2JpQWdibFJ5WldWek9pQnVkVzFpWlhJc1hHNGdJSEpoYm1SdmJUb2dVbUZ1Wkc5dFJtNWNiaWtnZTF4dUlDQmpiMjV6ZENCc1pXRm1VMmw2WlNBOUlFMWhkR2d1YldGNEtERXdMQ0J1VG1WcFoyaGliM0p6S1R0Y2JseHVJQ0JqYjI1emRDQjBjbVZsY3lBOUlIVjBhV3h6WEc0Z0lDQWdMbkpoYm1kbEtHNVVjbVZsY3lsY2JpQWdJQ0F1YldGd0tDaGZMQ0JwS1NBOVBpQnRZV3RsVkhKbFpTaGtZWFJoTENCc1pXRm1VMmw2WlN3Z2FTd2djbUZ1Wkc5dEtTazdYRzRnSUdOdmJuTjBJR1p2Y21WemRDQTlJSFJ5WldWekxtMWhjQ2dvZEhKbFpTa2dQVDRnWm14aGRIUmxibFJ5WldVb2RISmxaU3dnYkdWaFpsTnBlbVVwS1R0Y2JseHVJQ0J5WlhSMWNtNGdabTl5WlhOME8xeHVmVnh1WEc0dktpcGNiaUFxSUVOdmJuTjBjblZqZENCaElISmhibVJ2YlNCd2NtOXFaV04wYVc5dUlIUnlaV1VnWW1GelpXUWdiMjRnWUdCa1lYUmhZR0FnZDJsMGFDQnNaV0YyWlhOY2JpQXFJRzltSUhOcGVtVWdZWFFnYlc5emRDQmdZR3hsWVdaVGFYcGxZR0JjYmlBcUwxeHVablZ1WTNScGIyNGdiV0ZyWlZSeVpXVW9YRzRnSUdSaGRHRTZJRlpsWTNSdmNpeGNiaUFnYkdWaFpsTnBlbVVnUFNBek1DeGNiaUFnYmpvZ2JuVnRZbVZ5TEZ4dUlDQnlZVzVrYjIwNklGSmhibVJ2YlVadVhHNHBPaUJTWVc1a2IyMVFjbTlxWldOMGFXOXVWSEpsWlU1dlpHVWdlMXh1SUNCamIyNXpkQ0JwYm1ScFkyVnpJRDBnZFhScGJITXVjbUZ1WjJVb1pHRjBZUzVzWlc1bmRHZ3BPMXh1SUNCamIyNXpkQ0IwY21WbElEMGdiV0ZyWlVWMVkyeHBaR1ZoYmxSeVpXVW9aR0YwWVN3Z2FXNWthV05sY3l3Z2JHVmhabE5wZW1Vc0lHNHNJSEpoYm1SdmJTazdYRzRnSUhKbGRIVnliaUIwY21WbE8xeHVmVnh1WEc1bWRXNWpkR2x2YmlCdFlXdGxSWFZqYkdsa1pXRnVWSEpsWlNoY2JpQWdaR0YwWVRvZ1ZtVmpkRzl5TEZ4dUlDQnBibVJwWTJWek9pQnVkVzFpWlhKYlhTeGNiaUFnYkdWaFpsTnBlbVVnUFNBek1DeGNiaUFnY1RvZ2JuVnRZbVZ5TEZ4dUlDQnlZVzVrYjIwNklGSmhibVJ2YlVadVhHNHBPaUJTWVc1a2IyMVFjbTlxWldOMGFXOXVWSEpsWlU1dlpHVWdlMXh1SUNCcFppQW9hVzVrYVdObGN5NXNaVzVuZEdnZ1BpQnNaV0ZtVTJsNlpTa2dlMXh1SUNBZ0lHTnZibk4wSUhOd2JHbDBVbVZ6ZFd4MGN5QTlJR1YxWTJ4cFpHVmhibEpoYm1SdmJWQnliMnBsWTNScGIyNVRjR3hwZENoa1lYUmhMQ0JwYm1ScFkyVnpMQ0J5WVc1a2IyMHBPMXh1SUNBZ0lHTnZibk4wSUh0cGJtUnBZMlZ6VEdWbWRDd2dhVzVrYVdObGMxSnBaMmgwTENCb2VYQmxjbkJzWVc1bExDQnZabVp6WlhSOUlEMGdjM0JzYVhSU1pYTjFiSFJ6TzF4dVhHNGdJQ0FnWTI5dWMzUWdiR1ZtZEVOb2FXeGtJRDBnYldGclpVVjFZMnhwWkdWaGJsUnlaV1VvWEc0Z0lDQWdJQ0JrWVhSaExGeHVJQ0FnSUNBZ2FXNWthV05sYzB4bFpuUXNYRzRnSUNBZ0lDQnNaV0ZtVTJsNlpTeGNiaUFnSUNBZ0lIRWdLeUF4TEZ4dUlDQWdJQ0FnY21GdVpHOXRYRzRnSUNBZ0tUdGNiaUFnSUNCamIyNXpkQ0J5YVdkb2RFTm9hV3hrSUQwZ2JXRnJaVVYxWTJ4cFpHVmhibFJ5WldVb1hHNGdJQ0FnSUNCa1lYUmhMRnh1SUNBZ0lDQWdhVzVrYVdObGMxSnBaMmgwTEZ4dUlDQWdJQ0FnYkdWaFpsTnBlbVVzWEc0Z0lDQWdJQ0J4SUNzZ01TeGNiaUFnSUNBZ0lISmhibVJ2YlZ4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0JqYjI1emRDQnViMlJsSUQwZ2UyeGxablJEYUdsc1pDd2djbWxuYUhSRGFHbHNaQ3dnYVhOTVpXRm1PaUJtWVd4elpTd2dhSGx3WlhKd2JHRnVaU3dnYjJabWMyVjBmVHRjYmlBZ0lDQnlaWFIxY200Z2JtOWtaVHRjYmlBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0JqYjI1emRDQnViMlJsSUQwZ2UybHVaR2xqWlhNc0lHbHpUR1ZoWmpvZ2RISjFaWDA3WEc0Z0lDQWdjbVYwZFhKdUlHNXZaR1U3WEc0Z0lIMWNibjFjYmx4dUx5b3FYRzRnS2lCSGFYWmxiaUJoSUhObGRDQnZaaUJnWUdsdVpHbGpaWE5nWUNCbWIzSWdaR0YwWVNCd2IybHVkSE1nWm5KdmJTQmdZR1JoZEdGZ1lDd2dZM0psWVhSbFhHNGdLaUJoSUhKaGJtUnZiU0JvZVhCbGNuQnNZVzVsSUhSdklITndiR2wwSUhSb1pTQmtZWFJoTENCeVpYUjFjbTVwYm1jZ2RIZHZJR0Z5Y21GNWN5QnBibVJwWTJWelhHNGdLaUIwYUdGMElHWmhiR3dnYjI0Z1pXbDBhR1Z5SUhOcFpHVWdiMllnZEdobElHaDVjR1Z5Y0d4aGJtVXVJRlJvYVhNZ2FYTWdkR2hsSUdKaGMybHpJR1p2Y2lCaFhHNGdLaUJ5WVc1a2IyMGdjSEp2YW1WamRHbHZiaUIwY21WbExDQjNhR2xqYUNCemFXMXdiSGtnZFhObGN5QjBhR2x6SUhOd2JHbDBkR2x1WnlCeVpXTjFjbk5wZG1Wc2VTNWNiaUFxSUZSb2FYTWdjR0Z5ZEdsamRXeGhjaUJ6Y0d4cGRDQjFjMlZ6SUdWMVkyeHBaR1ZoYmlCa2FYTjBZVzVqWlNCMGJ5QmtaWFJsY20xcGJtVWdkR2hsSUdoNWNHVnljR3hoYm1WY2JpQXFJR0Z1WkNCM2FHbGphQ0J6YVdSbElHVmhZMmdnWkdGMFlTQnpZVzF3YkdVZ1ptRnNiSE1nYjI0dVhHNGdLaTljYm1aMWJtTjBhVzl1SUdWMVkyeHBaR1ZoYmxKaGJtUnZiVkJ5YjJwbFkzUnBiMjVUY0d4cGRDaGNiaUFnWkdGMFlUb2dWbVZqZEc5eUxGeHVJQ0JwYm1ScFkyVnpPaUJ1ZFcxaVpYSmJYU3hjYmlBZ2NtRnVaRzl0T2lCU1lXNWtiMjFHYmx4dUtTQjdYRzRnSUM4dlkyOXVjM1FnWkdsdElEMGdNVHRjYmx4dUlDQXZMeUJUWld4bFkzUWdkSGR2SUhKaGJtUnZiU0J3YjJsdWRITXNJSE5sZENCMGFHVWdhSGx3WlhKd2JHRnVaU0JpWlhSM1pXVnVJSFJvWlcxY2JpQWdZMjl1YzNRZ2JHVm1kRWx1WkdWNElEMGdkWFJwYkhNdWRHRjFVbUZ1WkVsdWRDaHBibVJwWTJWekxteGxibWQwYUN3Z2NtRnVaRzl0S1R0Y2JpQWdiR1YwSUhKcFoyaDBTVzVrWlhnZ1BTQjFkR2xzY3k1MFlYVlNZVzVrU1c1MEtHbHVaR2xqWlhNdWJHVnVaM1JvTENCeVlXNWtiMjBwTzF4dUlDQnlhV2RvZEVsdVpHVjRJQ3M5SUd4bFpuUkpibVJsZUNBOVBUMGdjbWxuYUhSSmJtUmxlQ0EvSURFZ09pQXdPMXh1SUNCeWFXZG9kRWx1WkdWNElEMGdjbWxuYUhSSmJtUmxlQ0FsSUdsdVpHbGpaWE11YkdWdVozUm9PMXh1SUNCamIyNXpkQ0JzWldaMElEMGdhVzVrYVdObGMxdHNaV1owU1c1a1pYaGRPMXh1SUNCamIyNXpkQ0J5YVdkb2RDQTlJR2x1WkdsalpYTmJjbWxuYUhSSmJtUmxlRjA3WEc1Y2JpQWdMeThnUTI5dGNIVjBaU0IwYUdVZ2JtOXliV0ZzSUhabFkzUnZjaUIwYnlCMGFHVWdhSGx3WlhKd2JHRnVaU0FvZEdobElIWmxZM1J2Y2lCaVpYUjNaV1Z1SUhSb1pTQjBkMjljYmlBZ0x5OGdjRzlwYm5SektTQmhibVFnZEdobElHOW1abk5sZENCbWNtOXRJSFJvWlNCdmNtbG5hVzVjYmlBZ2JHVjBJR2g1Y0dWeWNHeGhibVZQWm1aelpYUWdQU0F3TzF4dUlDQnNaWFFnYUhsd1pYSndiR0Z1WlZabFkzUnZjaUE5SURBN1hHNWNibHh1SUNCb2VYQmxjbkJzWVc1bFZtVmpkRzl5SUQwZ1pHRjBZVnRzWldaMFhTQXRJR1JoZEdGYmNtbG5hSFJkTzF4dUlDQm9lWEJsY25Cc1lXNWxUMlptYzJWMElDMDlYRzRnSUNBZ0tHaDVjR1Z5Y0d4aGJtVldaV04wYjNJZ0tpQW9aR0YwWVZ0c1pXWjBYU0FySUdSaGRHRmJjbWxuYUhSZEtTa2dMeUF5TGpBN1hHNWNibHh1SUNBdkx5QkdiM0lnWldGamFDQndiMmx1ZENCamIyMXdkWFJsSUhSb1pTQnRZWEpuYVc0Z0tIQnliMnBsWTNRZ2FXNTBieUJ1YjNKdFlXd2dkbVZqZEc5eUtWeHVJQ0F2THlCSlppQjNaU0JoY21VZ2IyNGdiRzkzWlhJZ2MybGtaU0J2WmlCMGFHVWdhSGx3WlhKd2JHRnVaU0J3ZFhRZ2FXNGdiMjVsSUhCcGJHVXNJRzkwYUdWeWQybHpaVnh1SUNBdkx5QndkWFFnYVhRZ2FXNGdkR2hsSUc5MGFHVnlJSEJwYkdVZ0tHbG1JSGRsSUdocGRDQm9lWEJsY25Cc1lXNWxJRzl1SUhSb1pTQnViM05sTENCbWJHbHdJR0VnWTI5cGJpbGNiaUFnYkdWMElHNU1aV1owSUQwZ01EdGNiaUFnYkdWMElHNVNhV2RvZENBOUlEQTdYRzRnSUdOdmJuTjBJSE5wWkdVZ1BTQjFkR2xzY3k1NlpYSnZjeWhwYm1ScFkyVnpMbXhsYm1kMGFDazdYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2FXNWthV05sY3k1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lHeGxkQ0J0WVhKbmFXNGdQU0JvZVhCbGNuQnNZVzVsVDJabWMyVjBPMXh1WEc0Z0lDQWdiV0Z5WjJsdUlDczlJR2g1Y0dWeWNHeGhibVZXWldOMGIzSWdLaUJrWVhSaFcybHVaR2xqWlhOYmFWMWRPMXh1WEc0Z0lDQWdhV1lnS0cxaGNtZHBiaUE5UFQwZ01Da2dlMXh1SUNBZ0lDQWdjMmxrWlZ0cFhTQTlJSFYwYVd4ekxuUmhkVkpoYm1SSmJuUW9NaXdnY21GdVpHOXRLVHRjYmlBZ0lDQWdJR2xtSUNoemFXUmxXMmxkSUQwOVBTQXdLVnh1SUNBZ0lDQWdJQ0J1VEdWbWRDQXJQU0F4TzF4dUlDQWdJQ0FnWld4elpWeHVJQ0FnSUNBZ0lDQnVVbWxuYUhRZ0t6MGdNVHRjYmlBZ0lDQjlJR1ZzYzJVZ2FXWWdLRzFoY21kcGJpQStJREFwSUh0Y2JpQWdJQ0FnSUhOcFpHVmJhVjBnUFNBd08xeHVJQ0FnSUNBZ2JreGxablFnS3owZ01UdGNiaUFnSUNCOUlHVnNjMlVnZTF4dUlDQWdJQ0FnYzJsa1pWdHBYU0E5SURFN1hHNGdJQ0FnSUNCdVVtbG5hSFFnS3owZ01UdGNiaUFnSUNCOVhHNGdJSDFjYmx4dUlDQXZMeUJPYjNjZ2RHaGhkQ0IzWlNCb1lYWmxJSFJvWlNCamIzVnVkSE1zSUdGc2JHOWpZWFJsSUdGeWNtRjVjMXh1SUNCamIyNXpkQ0JwYm1ScFkyVnpUR1ZtZENBOUlIVjBhV3h6TG5wbGNtOXpLRzVNWldaMEtUdGNiaUFnWTI5dWMzUWdhVzVrYVdObGMxSnBaMmgwSUQwZ2RYUnBiSE11ZW1WeWIzTW9ibEpwWjJoMEtUdGNibHh1SUNBdkx5QlFiM0IxYkdGMFpTQjBhR1VnWVhKeVlYbHpJSGRwZEdnZ2FXNWthV05sY3lCaFkyTnZjbVJwYm1jZ2RHOGdkMmhwWTJnZ2MybGtaU0IwYUdWNUlHWmxiR3dnYjI1Y2JpQWdia3hsWm5RZ1BTQXdPMXh1SUNCdVVtbG5hSFFnUFNBd08xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhOcFpHVXViR1Z1WjNSb095QnBLeXNwSUh0Y2JpQWdJQ0JwWmlBb2MybGtaVnRwWFNBOVBUMGdNQ2tnZTF4dUlDQWdJQ0FnYVc1a2FXTmxjMHhsWm5SYmJreGxablJkSUQwZ2FXNWthV05sYzF0cFhUdGNiaUFnSUNBZ0lHNU1aV1owSUNzOUlERTdYRzRnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUdsdVpHbGpaWE5TYVdkb2RGdHVVbWxuYUhSZElEMGdhVzVrYVdObGMxdHBYVHRjYmlBZ0lDQWdJRzVTYVdkb2RDQXJQU0F4TzF4dUlDQWdJSDFjYmlBZ2ZWeHVYRzRnSUhKbGRIVnliaUI3WEc0Z0lDQWdhVzVrYVdObGMweGxablFzWEc0Z0lDQWdhVzVrYVdObGMxSnBaMmgwTEZ4dUlDQWdJR2g1Y0dWeWNHeGhibVU2SUdoNWNHVnljR3hoYm1WV1pXTjBiM0lzWEc0Z0lDQWdiMlptYzJWME9pQm9lWEJsY25Cc1lXNWxUMlptYzJWMExGeHVJQ0I5TzF4dWZWeHVYRzVtZFc1amRHbHZiaUJtYkdGMGRHVnVWSEpsWlNoMGNtVmxPaUJTWVc1a2IyMVFjbTlxWldOMGFXOXVWSEpsWlU1dlpHVXNJR3hsWVdaVGFYcGxPaUJ1ZFcxaVpYSXBJSHRjYmlBZ1kyOXVjM1FnYms1dlpHVnpJRDBnYm5WdFRtOWtaWE1vZEhKbFpTazdYRzRnSUdOdmJuTjBJRzVNWldGMlpYTWdQU0J1ZFcxTVpXRjJaWE1vZEhKbFpTazdYRzVjYmlBZ0x5OGdWRTlFVHpvZ1ZtVnlhV1o1SUhSb1lYUWdjM0JoY25ObElHTnZaR1VnYVhNZ2JtOTBJSEpsYkdWMllXNTBMaTR1WEc0Z0lHTnZibk4wSUdoNWNHVnljR3hoYm1WeklEMGdkWFJwYkhOY2JpQWdJQ0F1Y21GdVoyVW9iazV2WkdWektWeHVJQ0FnSUM1dFlYQW9LQ2tnUFQ0Z2RISmxaUzVvZVhCbGNuQnNZVzVsSUQ4Z01TQTZJREFwTzF4dVhHNGdJR052Ym5OMElHOW1abk5sZEhNZ1BTQjFkR2xzY3k1NlpYSnZjeWh1VG05a1pYTXBPMXh1SUNCamIyNXpkQ0JqYUdsc1pISmxiaUE5SUhWMGFXeHpMbkpoYm1kbEtHNU9iMlJsY3lrdWJXRndLQ2dwSUQwK0lGc3RNU3dnTFRGZEtUdGNiaUFnWTI5dWMzUWdhVzVrYVdObGN5QTlJSFYwYVd4elhHNGdJQ0FnTG5KaGJtZGxLRzVNWldGMlpYTXBYRzRnSUNBZ0xtMWhjQ2dvS1NBOVBpQjFkR2xzY3k1eVlXNW5aU2hzWldGbVUybDZaU2t1YldGd0tDZ3BJRDArSUMweEtTazdYRzRnSUhKbFkzVnljMmwyWlVac1lYUjBaVzRvZEhKbFpTd2dhSGx3WlhKd2JHRnVaWE1zSUc5bVpuTmxkSE1zSUdOb2FXeGtjbVZ1TENCcGJtUnBZMlZ6TENBd0xDQXdLVHRjYmlBZ2NtVjBkWEp1SUc1bGR5QkdiR0YwVkhKbFpTaG9lWEJsY25Cc1lXNWxjeXdnYjJabWMyVjBjeXdnWTJocGJHUnlaVzRzSUdsdVpHbGpaWE1wTzF4dWZWeHVYRzVtZFc1amRHbHZiaUJ5WldOMWNuTnBkbVZHYkdGMGRHVnVLRnh1SUNCMGNtVmxPaUJTWVc1a2IyMVFjbTlxWldOMGFXOXVWSEpsWlU1dlpHVXNYRzRnSUdoNWNHVnljR3hoYm1Wek9pQnVkVzFpWlhKYlhTeGNiaUFnYjJabWMyVjBjem9nYm5WdFltVnlXMTBzWEc0Z0lHTm9hV3hrY21WdU9pQnVkVzFpWlhKYlhWdGRMRnh1SUNCcGJtUnBZMlZ6T2lCdWRXMWlaWEpiWFZ0ZExGeHVJQ0J1YjJSbFRuVnRPaUJ1ZFcxaVpYSXNYRzRnSUd4bFlXWk9kVzA2SUc1MWJXSmxjbHh1S1RvZ2V5QnViMlJsVG5WdE9pQnVkVzFpWlhJN0lHeGxZV1pPZFcwNklHNTFiV0psY2lCOUlIdGNiaUFnYVdZZ0tIUnlaV1V1YVhOTVpXRm1LU0I3WEc0Z0lDQWdZMmhwYkdSeVpXNWJibTlrWlU1MWJWMWJNRjBnUFNBdGJHVmhaazUxYlR0Y2JseHVJQ0FnSUM4dklGUlBSRTg2SUZSeWFYQnNaU0JqYUdWamF5QjBhR2x6SUc5d1pYSmhkR2x2YmlCamIzSnlaWE53YjI1a2N5QjBiMXh1SUNBZ0lDOHZJR2x1WkdsalpYTmJiR1ZoWms1MWJTQTZJSFJ5WldVdWFXNWthV05sY3k1emFHRndaVnN3WFYwZ1BTQjBjbVZsTG1sdVpHbGpaWE5jYmlBZ0lDQnBibVJwWTJWelcyeGxZV1pPZFcxZExuTndiR2xqWlNnd0xDQjBjbVZsTG1sdVpHbGpaWE1oTG14bGJtZDBhQ3dnTGk0dWRISmxaUzVwYm1ScFkyVnpJU2s3WEc0Z0lDQWdiR1ZoWms1MWJTQXJQU0F4TzF4dUlDQWdJSEpsZEhWeWJpQjdibTlrWlU1MWJTd2diR1ZoWms1MWJYMDdYRzRnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdhSGx3WlhKd2JHRnVaWE5iYm05a1pVNTFiVjBnUFNCMGNtVmxMbWg1Y0dWeWNHeGhibVVoTzF4dUlDQWdJRzltWm5ObGRITmJibTlrWlU1MWJWMGdQU0IwY21WbExtOW1abk5sZENFN1hHNGdJQ0FnWTJocGJHUnlaVzViYm05a1pVNTFiVjFiTUYwZ1BTQnViMlJsVG5WdElDc2dNVHRjYmlBZ0lDQmpiMjV6ZENCdmJHUk9iMlJsVG5WdElEMGdibTlrWlU1MWJUdGNibHh1SUNBZ0lHeGxkQ0J5WlhNZ1BTQnlaV04xY25OcGRtVkdiR0YwZEdWdUtGeHVJQ0FnSUNBZ2RISmxaUzVzWldaMFEyaHBiR1FoTEZ4dUlDQWdJQ0FnYUhsd1pYSndiR0Z1WlhNc1hHNGdJQ0FnSUNCdlptWnpaWFJ6TEZ4dUlDQWdJQ0FnWTJocGJHUnlaVzRzWEc0Z0lDQWdJQ0JwYm1ScFkyVnpMRnh1SUNBZ0lDQWdibTlrWlU1MWJTQXJJREVzWEc0Z0lDQWdJQ0JzWldGbVRuVnRYRzRnSUNBZ0tUdGNiaUFnSUNCdWIyUmxUblZ0SUQwZ2NtVnpMbTV2WkdWT2RXMDdYRzRnSUNBZ2JHVmhaazUxYlNBOUlISmxjeTVzWldGbVRuVnRPMXh1WEc0Z0lDQWdZMmhwYkdSeVpXNWJiMnhrVG05a1pVNTFiVjFiTVYwZ1BTQnViMlJsVG5WdElDc2dNVHRjYmx4dUlDQWdJSEpsY3lBOUlISmxZM1Z5YzJsMlpVWnNZWFIwWlc0b1hHNGdJQ0FnSUNCMGNtVmxMbkpwWjJoMFEyaHBiR1FoTEZ4dUlDQWdJQ0FnYUhsd1pYSndiR0Z1WlhNc1hHNGdJQ0FnSUNCdlptWnpaWFJ6TEZ4dUlDQWdJQ0FnWTJocGJHUnlaVzRzWEc0Z0lDQWdJQ0JwYm1ScFkyVnpMRnh1SUNBZ0lDQWdibTlrWlU1MWJTQXJJREVzWEc0Z0lDQWdJQ0JzWldGbVRuVnRYRzRnSUNBZ0tUdGNiaUFnSUNCeVpYUjFjbTRnZTI1dlpHVk9kVzA2SUhKbGN5NXViMlJsVG5WdExDQnNaV0ZtVG5WdE9pQnlaWE11YkdWaFprNTFiWDA3WEc0Z0lIMWNibjFjYmx4dVpuVnVZM1JwYjI0Z2JuVnRUbTlrWlhNb2RISmxaVG9nVW1GdVpHOXRVSEp2YW1WamRHbHZibFJ5WldWT2IyUmxLVG9nYm5WdFltVnlJSHRjYmlBZ2FXWWdLSFJ5WldVdWFYTk1aV0ZtS1Z4dUlDQWdJSEpsZEhWeWJpQXhPMXh1SUNCbGJITmxYRzRnSUNBZ2NtVjBkWEp1SURFZ0t5QnVkVzFPYjJSbGN5aDBjbVZsTG14bFpuUkRhR2xzWkNFcElDc2diblZ0VG05a1pYTW9kSEpsWlM1eWFXZG9kRU5vYVd4a0lTazdYRzU5WEc1Y2JtWjFibU4wYVc5dUlHNTFiVXhsWVhabGN5aDBjbVZsT2lCU1lXNWtiMjFRY205cVpXTjBhVzl1VkhKbFpVNXZaR1VwT2lCdWRXMWlaWElnZTF4dUlDQnBaaUFvZEhKbFpTNXBjMHhsWVdZcFhHNGdJQ0FnY21WMGRYSnVJREU3WEc0Z0lHVnNjMlZjYmlBZ0lDQnlaWFIxY200Z2JuVnRUR1ZoZG1WektIUnlaV1V1YkdWbWRFTm9hV3hrSVNrZ0t5QnVkVzFNWldGMlpYTW9kSEpsWlM1eWFXZG9kRU5vYVd4a0lTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1IyVnVaWEpoZEdVZ1lXNGdZWEp5WVhrZ2IyWWdjMlYwY3lCdlppQmpZVzVrYVdSaGRHVWdibVZoY21WemRDQnVaV2xuYUdKdmNuTWdZbmxjYmlBcUlHTnZibk4wY25WamRHbHVaeUJoSUhKaGJtUnZiU0J3Y205cVpXTjBhVzl1SUdadmNtVnpkQ0JoYm1RZ2RHRnJhVzVuSUhSb1pTQnNaV0YyWlhNZ2IyWWdZV3hzSUhSb1pWeHVJQ29nZEhKbFpYTXVJRUZ1ZVNCbmFYWmxiaUIwY21WbElHaGhjeUJzWldGMlpYTWdkR2hoZENCaGNtVWdZU0J6WlhRZ2IyWWdjRzkwWlc1MGFXRnNJRzVsWVhKbGMzUmNiaUFxSUc1bGFXZG9ZbTl5Y3k0Z1IybDJaVzRnWlc1dmRXZG9JSFJ5WldWeklIUm9aU0J6WlhRZ2IyWWdZV3hzSUhOMVkyZ2diR1ZoZG1WeklHZHBkbVZ6SUdFZ1oyOXZaRnh1SUNvZ2JHbHJaV3hwYUc5dlpDQnZaaUJuWlhSMGFXNW5JR0VnWjI5dlpDQnpaWFFnYjJZZ2JtVmhjbVZ6ZENCdVpXbG5hR0p2Y25NZ2FXNGdZMjl0Y0c5emFYUmxMaUJUYVc1alpWeHVJQ29nYzNWamFDQmhJSEpoYm1SdmJTQndjbTlxWldOMGFXOXVJR1p2Y21WemRDQnBjeUJwYm1WNGNHVnVjMmwyWlNCMGJ5QmpiMjF3ZFhSbExDQjBhR2x6SUdOaGJpQmlaU0JoWEc0Z0tpQjFjMlZtZFd3Z2JXVmhibk1nYjJZZ2MyVmxaR2x1WnlCdmRHaGxjaUJ1WldGeVpYTjBJRzVsYVdkb1ltOXlJR0ZzWjI5eWFYUm9iWE11WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnRZV3RsVEdWaFprRnljbUY1S0hKd1JtOXlaWE4wT2lCR2JHRjBWSEpsWlZ0ZEtUb2diblZ0WW1WeVcxMWJYU0I3WEc0Z0lHbG1JQ2h5Y0VadmNtVnpkQzVzWlc1bmRHZ2dQaUF3S1NCN1hHNGdJQ0FnWTI5dWMzUWdiM1YwY0hWME9pQnVkVzFpWlhKYlhWdGRJRDBnVzEwN1hHNGdJQ0FnWm05eUlDaGpiMjV6ZENCMGNtVmxJRzltSUhKd1JtOXlaWE4wS1Z4dUlDQWdJQ0FnYjNWMGNIVjBMbkIxYzJnb0xpNHVkSEpsWlM1cGJtUnBZMlZ6SVNrN1hHNWNiaUFnSUNCeVpYUjFjbTRnYjNWMGNIVjBPMXh1SUNCOUlHVnNjMlVnZTF4dUlDQWdJSEpsZEhWeWJpQmJXeTB4WFYwN1hHNGdJSDFjYm4xY2JseHVMeW9xWEc0Z0tpQlRaV3hsWTNSeklIUm9aU0J6YVdSbElHOW1JSFJvWlNCMGNtVmxJSFJ2SUhObFlYSmphQ0JrZFhKcGJtY2dabXhoZENCMGNtVmxJSE5sWVhKamFDNWNiaUFxTDF4dVpuVnVZM1JwYjI0Z2MyVnNaV04wVTJsa1pTaGNiaUFnYUhsd1pYSndiR0Z1WlRvZ2JuVnRZbVZ5TEZ4dUlDQnZabVp6WlhRNklHNTFiV0psY2l4Y2JpQWdjRzlwYm5RNklHNTFiV0psY2l4Y2JpQWdjbUZ1Wkc5dE9pQlNZVzVrYjIxR2JseHVLU0I3WEc0Z0lHeGxkQ0J0WVhKbmFXNGdQU0J2Wm1aelpYUTdYRzVjYmlBZ2JXRnlaMmx1SUNzOUlHaDVjR1Z5Y0d4aGJtVWdLaUJ3YjJsdWREdGNibHh1WEc0Z0lHbG1JQ2h0WVhKbmFXNGdQVDA5SURBcElIdGNiaUFnSUNCamIyNXpkQ0J6YVdSbElEMGdkWFJwYkhNdWRHRjFVbUZ1WkVsdWRDZ3lMQ0J5WVc1a2IyMHBPMXh1SUNBZ0lISmxkSFZ5YmlCemFXUmxPMXh1SUNCOUlHVnNjMlVnYVdZZ0tHMWhjbWRwYmlBK0lEQXBJSHRjYmlBZ0lDQnlaWFIxY200Z01EdGNiaUFnZlNCbGJITmxJSHRjYmlBZ0lDQnlaWFIxY200Z01UdGNiaUFnZlZ4dWZWeHVYRzR2S2lwY2JpQXFJRk5sWVhKamFHVnpJR0VnWm14aGRIUmxibVZrSUhKd0xYUnlaV1VnWm05eUlHRWdjRzlwYm5RdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ6WldGeVkyaEdiR0YwVkhKbFpTaGNiaUFnY0c5cGJuUTZJRzUxYldKbGNpeGNiaUFnZEhKbFpUb2dSbXhoZEZSeVpXVXNYRzRnSUhKaGJtUnZiVG9nVW1GdVpHOXRSbTVjYmlrZ2UxeHVJQ0JzWlhRZ2JtOWtaU0E5SURBN1hHNGdJSGRvYVd4bElDaDBjbVZsTG1Ob2FXeGtjbVZ1VzI1dlpHVmRXekJkSUQ0Z01Da2dlMXh1SUNBZ0lHTnZibk4wSUhOcFpHVWdQU0J6Wld4bFkzUlRhV1JsS0Z4dUlDQWdJQ0FnZEhKbFpTNW9lWEJsY25Cc1lXNWxjMXR1YjJSbFhTeGNiaUFnSUNBZ0lIUnlaV1V1YjJabWMyVjBjMXR1YjJSbFhTeGNiaUFnSUNBZ0lIQnZhVzUwTEZ4dUlDQWdJQ0FnY21GdVpHOXRYRzRnSUNBZ0tUdGNiaUFnSUNCcFppQW9jMmxrWlNBOVBUMGdNQ2xjYmlBZ0lDQWdJRzV2WkdVZ1BTQjBjbVZsTG1Ob2FXeGtjbVZ1VzI1dlpHVmRXekJkTzF4dUlDQWdJR1ZzYzJWY2JpQWdJQ0FnSUc1dlpHVWdQU0IwY21WbExtTm9hV3hrY21WdVcyNXZaR1ZkV3pGZE8xeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ2FXNWtaWGdnUFNBdE1TQXFJSFJ5WldVdVkyaHBiR1J5Wlc1YmJtOWtaVjFiTUYwN1hHNGdJSEpsZEhWeWJpQjBjbVZsTG1sdVpHbGpaWE5iYVc1a1pYaGRPMXh1ZlZ4dUlsMTkiLCIvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXG4vKipcbiAqIEBsaWNlbnNlXG4gKlxuICogQ29weXJpZ2h0IDIwMTkgR29vZ2xlIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqL1xuLyoqXG4gKiBUaGlzIGlzIGEgSmF2YVNjcmlwdCByZWltcGxlbWVudGF0aW9uIG9mIFVNQVAgKG9yaWdpbmFsIGxpY2Vuc2UgYmVsb3cpLCBmcm9tXG4gKiB0aGUgcHl0aG9uIGltcGxlbWVudGF0aW9uIGZvdW5kIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9sbWNpbm5lcy91bWFwLlxuICpcbiAqIEBhdXRob3IgYW5keWNvZW5lbkBnb29nbGUuY29tIChBbmR5IENvZW5lbilcbiAqL1xuLyoqXG4gKiBAbGljZW5zZVxuICogQlNEIDMtQ2xhdXNlIExpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIExlbGFuZCBNY0lubmVzXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dFxuICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6XG4gKlxuICogKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXNcbiAqICAgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuXG4gKlxuICogKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsXG4gKiAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb25cbiAqICAgYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uXG4gKlxuICogKiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzXG4gKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tXG4gKiAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uXG4gKlxuICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyBcIkFTIElTXCJcbiAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEVcbiAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRVxuICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRVxuICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUxcbiAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SXG4gKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUlxuICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSxcbiAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFXG4gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLlxuICovXG5pbXBvcnQgKiBhcyBoZWFwIGZyb20gJy4vaGVhcCc7XG5pbXBvcnQgKiBhcyBtYXRyaXggZnJvbSAnLi9tYXRyaXgnO1xuaW1wb3J0ICogYXMgbm5EZXNjZW50IGZyb20gJy4vbm5fZGVzY2VudCc7XG5pbXBvcnQgKiBhcyB0cmVlIGZyb20gJy4vdHJlZSc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBMTSBmcm9tICdtbC1sZXZlbmJlcmctbWFycXVhcmR0JztcbmNvbnN0IFNNT09USF9LX1RPTEVSQU5DRSA9IDFlLTU7XG5jb25zdCBNSU5fS19ESVNUX1NDQUxFID0gMWUtMztcbi8qKlxuICogVU1BUCBwcm9qZWN0aW9uIHN5c3RlbSwgYmFzZWQgb24gdGhlIHB5dGhvbiBpbXBsZW1lbnRhdGlvbiBmcm9tIE1jSW5uZXMsIEwsXG4gKiBIZWFseSwgSiwgVU1BUDogVW5pZm9ybSBNYW5pZm9sZCBBcHByb3hpbWF0aW9uIGFuZCBQcm9qZWN0aW9uIGZvciBEaW1lbnNpb25cbiAqIFJlZHVjdGlvbiAoaHR0cHM6Ly9naXRodWIuY29tL2xtY2lubmVzL3VtYXApLlxuICpcbiAqIFRoaXMgaW1wbGVtZW50YXRpb24gZGlmZmVycyBpbiBhIGZldyByZWdhcmRzOlxuICogYSkgVGhlIGluaXRpYWxpemF0aW9uIG9mIHRoZSBlbWJlZGRpbmcgZm9yIG9wdGltaXphdGlvbiBpcyBub3QgY29tcHV0ZWQgdXNpbmdcbiAqICAgIGEgc3BlY3RyYWwgbWV0aG9kLCByYXRoZXIgaXQgaXMgaW5pdGlhbGl6ZWQgcmFuZG9tbHkuIFRoaXMgYXZvaWRzIHNvbWVcbiAqICAgIGNvbXB1dGF0aW9uYWxseSBpbnRlbnNpdmUgbWF0cml4IGVpZ2VuIGNvbXB1dGF0aW9ucyB0aGF0IGFyZW4ndCBlYXNpbHlcbiAqICAgIHBvcnRlZCB0byBKYXZhU2NyaXB0LlxuICogYikgQSBsb3Qgb2YgXCJleHRyYVwiIGZ1bmN0aW9uYWxpdHkgaGFzIGJlZW4gb21pdHRlZCBmcm9tIHRoaXMgaW1wbGVtZW50YXRpb24sXG4gKiAgICBtb3N0IG5vdGFibHkgYSBncmVhdCBkZWFsIG9mIGFsdGVybmF0ZSBkaXN0YW5jZSBmdW5jdGlvbnMuXG4gKlxuICogVGhpcyBpbXBsZW1lbnRhdGlvbiBwcm92aWRlcyB0aHJlZSBtZXRob2RzIG9mIHJlZHVjaW5nIGRpbWVuc2lvbmFsaXR5OlxuICogMSkgZml0OiBmaXQgdGhlIGRhdGEgc3luY2hyb25vdXNseVxuICogMikgZml0QXN5bmM6IGZpdCB0aGUgZGF0YSBhc3luY2hyb25vdXNseSwgd2l0aCBhIGNhbGxiYWNrIGZ1bmN0aW9uIHByb3ZpZGVkXG4gKiAgICAgIHRoYXQgaXMgaW52b2tlZCBvbiBlYWNoIG9wdGltaXphdGlvbiBzdGVwLlxuICogMykgaW5pdGlhbGl6ZUZpdCAvIHN0ZXA6IG1hbnVhbGx5IGluaXRpYWxpemUgdGhlIGFsZ29yaXRobSB0aGVuIGV4cGxpY3RseVxuICogICAgICBzdGVwIHRocm91Z2ggZWFjaCBlcG9jaCBvZiB0aGUgU0dEIG9wdGltaXphdGlvblxuICovXG5leHBvcnQgY2xhc3MgVU1BUCB7XG4gICAgbGVhcm5pbmdSYXRlID0gMS4wO1xuICAgIGxvY2FsQ29ubmVjdGl2aXR5ID0gMS4wO1xuICAgIG1pbkRpc3QgPSAwLjE7XG4gICAgbkNvbXBvbmVudHMgPSAyO1xuICAgIG5FcG9jaHMgPSAwO1xuICAgIG5OZWlnaGJvcnMgPSAxNTtcbiAgICBuZWdhdGl2ZVNhbXBsZVJhdGUgPSA1O1xuICAgIHJhbmRvbSA9IE1hdGgucmFuZG9tO1xuICAgIHJlcHVsc2lvblN0cmVuZ3RoID0gMS4wO1xuICAgIHNldE9wTWl4UmF0aW8gPSAxLjA7XG4gICAgc3ByZWFkID0gMS4wO1xuICAgIHRyYW5zZm9ybVF1ZXVlU2l6ZSA9IDQuMDtcbiAgICAvLyBTdXBlcnZpc2VkIHByb2plY3Rpb24gcGFyYW1zXG4gICAgdGFyZ2V0TWV0cmljID0gXCJjYXRlZ29yaWNhbFwiIC8qIFRhcmdldE1ldHJpYy5jYXRlZ29yaWNhbCAqLztcbiAgICB0YXJnZXRXZWlnaHQgPSAwLjU7XG4gICAgdGFyZ2V0Tk5laWdoYm9ycyA9IDE1O1xuICAgIGRpc3RhbmNlRm4gPSBudW1lcmljO1xuICAgIC8vIEtOTiBzdGF0ZSAoY2FuIGJlIHByZWNvbXB1dGVkIGFuZCBzdXBwbGllZCB2aWEgaW5pdGlhbGl6ZUZpdClcbiAgICBrbm5JbmRpY2VzO1xuICAgIGtubkRpc3RhbmNlcztcbiAgICAvLyBJbnRlcm5hbCBncmFwaCBjb25uZWN0aXZpdHkgcmVwcmVzZW50YXRpb25cbiAgICBncmFwaDtcbiAgICBYO1xuICAgIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICBycEZvcmVzdCA9IFtdO1xuICAgIGluaXRGcm9tUmFuZG9tO1xuICAgIGluaXRGcm9tVHJlZTtcbiAgICBzZWFyY2g7XG4gICAgc2VhcmNoR3JhcGg7XG4gICAgLy8gU3VwZXJ2aXNlZCBwcm9qZWN0aW9uIGxhYmVscyAvIHRhcmdldHNcbiAgICBZO1xuICAgIC8vIFByb2plY3RlZCBlbWJlZGRpbmdcbiAgICBlbWJlZGRpbmcgPSBbXTtcbiAgICBvcHRpbWl6YXRpb25TdGF0ZSA9IG5ldyBPcHRpbWl6YXRpb25TdGF0ZSgpO1xuICAgIGdldCBuZWlnaGJvcnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5OZWlnaGJvcnM7XG4gICAgfVxuICAgIGNvbnN0cnVjdG9yKHBhcmFtcyA9IHt9KSB7XG4gICAgICAgIGNvbnN0IHNldFBhcmFtID0gKGtleSkgPT4ge1xuICAgICAgICAgICAgLy9AdHMtaWdub3JlXG4gICAgICAgICAgICBpZiAocGFyYW1zW2tleV0gIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICB0aGlzW2tleV0gPSBwYXJhbXNba2V5XTtcbiAgICAgICAgfTtcbiAgICAgICAgc2V0UGFyYW0oJ2Rpc3RhbmNlRm4nKTtcbiAgICAgICAgc2V0UGFyYW0oJ2xlYXJuaW5nUmF0ZScpO1xuICAgICAgICBzZXRQYXJhbSgnbG9jYWxDb25uZWN0aXZpdHknKTtcbiAgICAgICAgc2V0UGFyYW0oJ21pbkRpc3QnKTtcbiAgICAgICAgc2V0UGFyYW0oJ25Db21wb25lbnRzJyk7XG4gICAgICAgIHNldFBhcmFtKCduRXBvY2hzJyk7XG4gICAgICAgIHNldFBhcmFtKCduTmVpZ2hib3JzJyk7XG4gICAgICAgIHNldFBhcmFtKCduZWdhdGl2ZVNhbXBsZVJhdGUnKTtcbiAgICAgICAgc2V0UGFyYW0oJ3JhbmRvbScpO1xuICAgICAgICBzZXRQYXJhbSgncmVwdWxzaW9uU3RyZW5ndGgnKTtcbiAgICAgICAgc2V0UGFyYW0oJ3NldE9wTWl4UmF0aW8nKTtcbiAgICAgICAgc2V0UGFyYW0oJ3NwcmVhZCcpO1xuICAgICAgICBzZXRQYXJhbSgndHJhbnNmb3JtUXVldWVTaXplJyk7XG4gICAgICAgIHRoaXMudGFyZ2V0Tk5laWdoYm9ycyA9IHBhcmFtcy5uTmVpZ2hib3JzIHx8IHRoaXMubk5laWdoYm9ycyB8fCB0aGlzLnRhcmdldE5OZWlnaGJvcnM7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEZpdCB0aGUgZGF0YSB0byBhIHByb2plY3RlZCBlbWJlZGRpbmcgc3BhY2Ugc3luY2hyb25vdXNseS5cbiAgICAgKi9cbiAgICBmaXQoWCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpemVGaXQoWCk7XG4gICAgICAgIHRoaXMub3B0aW1pemVMYXlvdXQoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuZW1iZWRkaW5nO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBGaXQgdGhlIGRhdGEgdG8gYSBwcm9qZWN0ZWQgZW1iZWRkaW5nIHNwYWNlIGFzeW5jaHJvbm91c2x5LCB3aXRoIGEgY2FsbGJhY2tcbiAgICAgKiBmdW5jdGlvbiBpbnZva2VkIG9uIGV2ZXJ5IGVwb2NoIG9mIG9wdGltaXphdGlvbi5cbiAgICAgKi9cbiAgICBhc3luYyBmaXRBc3luYyhYLCBjYWxsYmFjayA9ICgpID0+IHRydWUpIHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplRml0KFgpO1xuICAgICAgICBhd2FpdCB0aGlzLm9wdGltaXplTGF5b3V0QXN5bmMoY2FsbGJhY2spO1xuICAgICAgICByZXR1cm4gdGhpcy5lbWJlZGRpbmc7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEluaXRpYWxpemVzIHBhcmFtZXRlcnMgbmVlZGVkIGZvciBzdXBlcnZpc2VkIHByb2plY3Rpb24uXG4gICAgICovXG4gICAgc2V0U3VwZXJ2aXNlZFByb2plY3Rpb24oWSwgcGFyYW1zID0ge30pIHtcbiAgICAgICAgdGhpcy5ZID0gWTtcbiAgICAgICAgdGhpcy50YXJnZXRNZXRyaWMgPSBwYXJhbXMudGFyZ2V0TWV0cmljIHx8IHRoaXMudGFyZ2V0TWV0cmljO1xuICAgICAgICB0aGlzLnRhcmdldFdlaWdodCA9IHBhcmFtcy50YXJnZXRXZWlnaHQgfHwgdGhpcy50YXJnZXRXZWlnaHQ7XG4gICAgICAgIHRoaXMudGFyZ2V0Tk5laWdoYm9ycyA9IHBhcmFtcy50YXJnZXROTmVpZ2hib3JzIHx8IHRoaXMudGFyZ2V0Tk5laWdoYm9ycztcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZXMgdW1hcCB3aXRoIHByZWNvbXB1dGVkIEtOTiBpbmRpY2VzIGFuZCBkaXN0YW5jZXMuXG4gICAgICovXG4gICAgc2V0UHJlY29tcHV0ZWRLTk4oa25uSW5kaWNlcywga25uRGlzdGFuY2VzKSB7XG4gICAgICAgIHRoaXMua25uSW5kaWNlcyA9IGtubkluZGljZXM7XG4gICAgICAgIHRoaXMua25uRGlzdGFuY2VzID0ga25uRGlzdGFuY2VzO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJbml0aWFsaXplcyBmaXQgYnkgY29tcHV0aW5nIEtOTiBhbmQgYSBmdXp6eSBzaW1wbGljaWFsIHNldCwgYXMgd2VsbCBhc1xuICAgICAqIGluaXRpYWxpemluZyB0aGUgcHJvamVjdGVkIGVtYmVkZGluZ3MuIFNldHMgdGhlIG9wdGltaXphdGlvbiBzdGF0ZSBhaGVhZFxuICAgICAqIG9mIG9wdGltaXphdGlvbiBzdGVwcy4gUmV0dXJucyB0aGUgbnVtYmVyIG9mIGVwb2NocyB0byBiZSB1c2VkIGZvciB0aGVcbiAgICAgKiBTR0Qgb3B0aW1pemF0aW9uLlxuICAgICAqL1xuICAgIGluaXRpYWxpemVGaXQoWCkge1xuICAgICAgICBpZiAoWC5sZW5ndGggPD0gdGhpcy5uTmVpZ2hib3JzKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBOb3QgZW5vdWdoIGRhdGEgcG9pbnRzICgke1gubGVuZ3RofSkgdG8gY3JlYXRlIG5OZWlnaGJvcnM6ICR7dGhpcy5uTmVpZ2hib3JzfS4gIEFkZCBtb3JlIGRhdGEgcG9pbnRzIG9yIGFkanVzdCB0aGUgY29uZmlndXJhdGlvbi5gKTtcbiAgICAgICAgLy8gV2UgZG9uJ3QgbmVlZCB0byByZWluaXRpYWxpemUgaWYgd2UndmUgYWxyZWFkeSBpbml0aWFsaXplZCBmb3IgdGhpcyBkYXRhLlxuICAgICAgICBpZiAodGhpcy5YID09PSBYICYmIHRoaXMuaXNJbml0aWFsaXplZClcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldE5FcG9jaHMoKTtcbiAgICAgICAgdGhpcy5YID0gWDtcbiAgICAgICAgaWYgKCF0aGlzLmtubkluZGljZXMgJiYgIXRoaXMua25uRGlzdGFuY2VzKSB7XG4gICAgICAgICAgICBjb25zdCBrbm5SZXN1bHRzID0gdGhpcy5uZWFyZXN0TmVpZ2hib3JzKFgpO1xuICAgICAgICAgICAgdGhpcy5rbm5JbmRpY2VzID0ga25uUmVzdWx0cy5rbm5JbmRpY2VzO1xuICAgICAgICAgICAgdGhpcy5rbm5EaXN0YW5jZXMgPSBrbm5SZXN1bHRzLmtubkRpc3RhbmNlcztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmdyYXBoID0gdGhpcy5mdXp6eVNpbXBsaWNpYWxTZXQoWCwgdGhpcy5uTmVpZ2hib3JzLCB0aGlzLnNldE9wTWl4UmF0aW8pO1xuICAgICAgICAvLyBTZXQgdXAgdGhlIHNlYXJjaCBncmFwaCBmb3Igc3Vic2VxdWVudCB0cmFuc2Zvcm1hdGlvbi5cbiAgICAgICAgdGhpcy5tYWtlU2VhcmNoRm5zKCk7XG4gICAgICAgIHRoaXMuc2VhcmNoR3JhcGggPSB0aGlzLm1ha2VTZWFyY2hHcmFwaChYKTtcbiAgICAgICAgLy8gQ2hlY2sgaWYgc3VwZXJ2aXNlZCBwcm9qZWN0aW9uLCB0aGVuIGFkanVzdCB0aGUgZ3JhcGguXG4gICAgICAgIHRoaXMucHJvY2Vzc0dyYXBoRm9yU3VwZXJ2aXNlZFByb2plY3Rpb24oKTtcbiAgICAgICAgY29uc3QgeyBoZWFkLCB0YWlsLCBlcG9jaHNQZXJTYW1wbGUsIH0gPSB0aGlzLmluaXRpYWxpemVTaW1wbGljaWFsU2V0RW1iZWRkaW5nKCk7XG4gICAgICAgIC8vIFNldCB0aGUgb3B0aW1pemF0aW9uIHJvdXRpbmUgc3RhdGVcbiAgICAgICAgdGhpcy5vcHRpbWl6YXRpb25TdGF0ZS5oZWFkID0gaGVhZDtcbiAgICAgICAgdGhpcy5vcHRpbWl6YXRpb25TdGF0ZS50YWlsID0gdGFpbDtcbiAgICAgICAgdGhpcy5vcHRpbWl6YXRpb25TdGF0ZS5lcG9jaHNQZXJTYW1wbGUgPSBlcG9jaHNQZXJTYW1wbGU7XG4gICAgICAgIC8vIE5vdywgaW5pdGlhbGl6ZSB0aGUgb3B0aW1pemF0aW9uIHN0ZXBzXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZU9wdGltaXphdGlvbigpO1xuICAgICAgICB0aGlzLnByZXBhcmVGb3JPcHRpbWl6YXRpb25Mb29wKCk7XG4gICAgICAgIHRoaXMuaXNJbml0aWFsaXplZCA9IHRydWU7XG4gICAgICAgIHJldHVybiB0aGlzLmdldE5FcG9jaHMoKTtcbiAgICB9XG4gICAgbWFrZVNlYXJjaEZucygpIHtcbiAgICAgICAgY29uc3QgeyBpbml0RnJvbVRyZWUsIGluaXRGcm9tUmFuZG9tIH0gPSBubkRlc2NlbnQubWFrZUluaXRpYWxpemF0aW9ucyh0aGlzLmRpc3RhbmNlRm4pO1xuICAgICAgICB0aGlzLmluaXRGcm9tVHJlZSA9IGluaXRGcm9tVHJlZTtcbiAgICAgICAgdGhpcy5pbml0RnJvbVJhbmRvbSA9IGluaXRGcm9tUmFuZG9tO1xuICAgICAgICB0aGlzLnNlYXJjaCA9IG5uRGVzY2VudC5tYWtlSW5pdGlhbGl6ZWROTlNlYXJjaCh0aGlzLmRpc3RhbmNlRm4pO1xuICAgIH1cbiAgICBtYWtlU2VhcmNoR3JhcGgoWCkge1xuICAgICAgICBjb25zdCBrbm5JbmRpY2VzID0gdGhpcy5rbm5JbmRpY2VzO1xuICAgICAgICBjb25zdCBrbm5EaXN0YW5jZXMgPSB0aGlzLmtubkRpc3RhbmNlcztcbiAgICAgICAgY29uc3QgZGltcyA9IFtYLmxlbmd0aCwgWC5sZW5ndGhdO1xuICAgICAgICBjb25zdCBzZWFyY2hHcmFwaCA9IG5ldyBtYXRyaXguU3BhcnNlTWF0cml4KFtdLCBbXSwgW10sIGRpbXMpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGtubkluZGljZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGtubiA9IGtubkluZGljZXNbaV07XG4gICAgICAgICAgICBjb25zdCBkaXN0YW5jZXMgPSBrbm5EaXN0YW5jZXNbaV07XG4gICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGtubi5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5laWdoYm9yID0ga25uW2pdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRpc3RhbmNlID0gZGlzdGFuY2VzW2pdO1xuICAgICAgICAgICAgICAgIGlmIChkaXN0YW5jZSA+IDApXG4gICAgICAgICAgICAgICAgICAgIHNlYXJjaEdyYXBoLnNldChpLCBuZWlnaGJvciwgZGlzdGFuY2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHRyYW5zcG9zZSA9IG1hdHJpeC50cmFuc3Bvc2Uoc2VhcmNoR3JhcGgpO1xuICAgICAgICByZXR1cm4gbWF0cml4Lm1heGltdW0oc2VhcmNoR3JhcGgsIHRyYW5zcG9zZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFRyYW5zZm9ybXMgZGF0YSB0byB0aGUgZXhpc3RpbmcgZW1iZWRkaW5nIHNwYWNlLlxuICAgICAqL1xuICAgIHRyYW5zZm9ybSh0b1RyYW5zZm9ybSkge1xuICAgICAgICAvLyBVc2UgdGhlIHByZXZpb3VzIHJhd0RhdGFcbiAgICAgICAgY29uc3QgcmF3RGF0YSA9IHRoaXMuWDtcbiAgICAgICAgaWYgKHJhd0RhdGEgPT09IHVuZGVmaW5lZCB8fCByYXdEYXRhLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gZGF0YSBoYXMgYmVlbiBmaXQuJyk7XG4gICAgICAgIGxldCBuTmVpZ2hib3JzID0gTWF0aC5mbG9vcih0aGlzLm5OZWlnaGJvcnMgKiB0aGlzLnRyYW5zZm9ybVF1ZXVlU2l6ZSk7XG4gICAgICAgIG5OZWlnaGJvcnMgPSBNYXRoLm1pbihyYXdEYXRhLmxlbmd0aCwgbk5laWdoYm9ycyk7XG4gICAgICAgIGNvbnN0IGluaXQgPSBubkRlc2NlbnQuaW5pdGlhbGl6ZVNlYXJjaCh0aGlzLnJwRm9yZXN0LCByYXdEYXRhLCB0b1RyYW5zZm9ybSwgbk5laWdoYm9ycywgdGhpcy5pbml0RnJvbVJhbmRvbSwgdGhpcy5pbml0RnJvbVRyZWUsIHRoaXMucmFuZG9tKTtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5zZWFyY2gocmF3RGF0YSwgdGhpcy5zZWFyY2hHcmFwaCwgaW5pdCwgdG9UcmFuc2Zvcm0pO1xuICAgICAgICBsZXQgeyBpbmRpY2VzLCB3ZWlnaHRzOiBkaXN0YW5jZXMgfSA9IGhlYXAuZGVoZWFwU29ydChyZXN1bHQpO1xuICAgICAgICBpbmRpY2VzID0gaW5kaWNlcy5tYXAoKHgpID0+IHguc2xpY2UoMCwgdGhpcy5uTmVpZ2hib3JzKSk7XG4gICAgICAgIGRpc3RhbmNlcyA9IGRpc3RhbmNlcy5tYXAoKHgpID0+IHguc2xpY2UoMCwgdGhpcy5uTmVpZ2hib3JzKSk7XG4gICAgICAgIGNvbnN0IGFkanVzdGVkTG9jYWxDb25uZWN0aXZpdHkgPSBNYXRoLm1heCgwLCB0aGlzLmxvY2FsQ29ubmVjdGl2aXR5IC0gMSk7XG4gICAgICAgIGNvbnN0IHsgc2lnbWFzLCByaG9zIH0gPSB0aGlzLnNtb290aEtOTkRpc3RhbmNlKGRpc3RhbmNlcywgdGhpcy5uTmVpZ2hib3JzLCBhZGp1c3RlZExvY2FsQ29ubmVjdGl2aXR5KTtcbiAgICAgICAgY29uc3QgeyByb3dzLCBjb2xzLCB2YWxzIH0gPSB0aGlzLmNvbXB1dGVNZW1iZXJzaGlwU3RyZW5ndGhzKGluZGljZXMsIGRpc3RhbmNlcywgc2lnbWFzLCByaG9zKTtcbiAgICAgICAgY29uc3Qgc2l6ZSA9IFt0b1RyYW5zZm9ybS5sZW5ndGgsIHJhd0RhdGEubGVuZ3RoXTtcbiAgICAgICAgbGV0IGdyYXBoID0gbmV3IG1hdHJpeC5TcGFyc2VNYXRyaXgocm93cywgY29scywgdmFscywgc2l6ZSk7XG4gICAgICAgIC8vIFRoaXMgd2FzIGEgdmVyeSBzcGVjaWFsbHkgY29uc3RydWN0ZWQgZ3JhcGggd2l0aCBjb25zdGFudCBkZWdyZWUuXG4gICAgICAgIC8vIFRoYXQgbGV0cyB1cyBkbyBmYW5jeSB1bnBhY2tpbmcgYnkgcmVzaGFwaW5nIHRoZSBjc3IgbWF0cml4IGluZGljZXNcbiAgICAgICAgLy8gYW5kIGRhdGEuIERvaW5nIHNvIHJlbGllcyBvbiB0aGUgY29uc3RhbnQgZGVncmVlIGFzc3VtcHRpb24hXG4gICAgICAgIGNvbnN0IG5vcm1lZCA9IG1hdHJpeC5ub3JtYWxpemUoZ3JhcGgsIFwibDFcIiAvKiBtYXRyaXguTm9ybVR5cGUubDEgKi8pO1xuICAgICAgICBjb25zdCBjc3JNYXRyaXggPSBtYXRyaXguZ2V0Q1NSKG5vcm1lZCk7XG4gICAgICAgIGNvbnN0IG5Qb2ludHMgPSB0b1RyYW5zZm9ybS5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGVJbmRpY2VzID0gdXRpbHMucmVzaGFwZTJkKGNzck1hdHJpeC5pbmRpY2VzLCBuUG9pbnRzLCB0aGlzLm5OZWlnaGJvcnMpO1xuICAgICAgICBjb25zdCBlV2VpZ2h0cyA9IHV0aWxzLnJlc2hhcGUyZChjc3JNYXRyaXgudmFsdWVzLCBuUG9pbnRzLCB0aGlzLm5OZWlnaGJvcnMpO1xuICAgICAgICBjb25zdCBlbWJlZGRpbmcgPSBpbml0VHJhbnNmb3JtKGVJbmRpY2VzLCBlV2VpZ2h0cywgdGhpcy5lbWJlZGRpbmcpO1xuICAgICAgICBjb25zdCBuRXBvY2hzID0gdGhpcy5uRXBvY2hzID9cbiAgICAgICAgICAgIHRoaXMubkVwb2NocyAvIDMgOlxuICAgICAgICAgICAgZ3JhcGgublJvd3MgPD0gMTAwMDAgP1xuICAgICAgICAgICAgICAgIDEwMCA6XG4gICAgICAgICAgICAgICAgMzA7XG4gICAgICAgIGNvbnN0IGdyYXBoTWF4ID0gZ3JhcGhcbiAgICAgICAgICAgIC5nZXRWYWx1ZXMoKVxuICAgICAgICAgICAgLnJlZHVjZSgobWF4LCB2YWwpID0+ICh2YWwgPiBtYXggPyB2YWwgOiBtYXgpLCAwKTtcbiAgICAgICAgZ3JhcGggPSBncmFwaC5tYXAoKHZhbHVlKSA9PiAodmFsdWUgPCBncmFwaE1heCAvIG5FcG9jaHMgPyAwIDogdmFsdWUpKTtcbiAgICAgICAgZ3JhcGggPSBtYXRyaXguZWxpbWluYXRlWmVyb3MoZ3JhcGgpO1xuICAgICAgICBjb25zdCBlcG9jaHNQZXJTYW1wbGUgPSB0aGlzLm1ha2VFcG9jaHNQZXJTYW1wbGUoZ3JhcGguZ2V0VmFsdWVzKCksIG5FcG9jaHMpO1xuICAgICAgICBjb25zdCBoZWFkID0gZ3JhcGguZ2V0Um93cygpO1xuICAgICAgICBjb25zdCB0YWlsID0gZ3JhcGguZ2V0Q29scygpO1xuICAgICAgICAvLyBJbml0aWFsaXplIG9wdGltaXphdGlvbiBzbGlnaHRseSBkaWZmZXJlbnRseSB0aGFuIHRoZSBmaXQgbWV0aG9kLlxuICAgICAgICB0aGlzLmFzc2lnbk9wdGltaXphdGlvblN0YXRlUGFyYW1ldGVycyh7XG4gICAgICAgICAgICBoZWFkRW1iZWRkaW5nOiBlbWJlZGRpbmcsXG4gICAgICAgICAgICB0YWlsRW1iZWRkaW5nOiB0aGlzLmVtYmVkZGluZyxcbiAgICAgICAgICAgIGhlYWQsXG4gICAgICAgICAgICB0YWlsLFxuICAgICAgICAgICAgY3VycmVudEVwb2NoOiAwLFxuICAgICAgICAgICAgbkVwb2NocyxcbiAgICAgICAgICAgIG5WZXJ0aWNlczogZ3JhcGguZ2V0RGltcygpWzFdLFxuICAgICAgICAgICAgZXBvY2hzUGVyU2FtcGxlLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5wcmVwYXJlRm9yT3B0aW1pemF0aW9uTG9vcCgpO1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpbWl6ZUxheW91dCgpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgd2UncmUgdXNpbmcgc3VwZXJ2aXNlZCBwcm9qZWN0aW9uLCB0aGVuIHByb2Nlc3MgdGhlIGdyYXBoXG4gICAgICogYWNjb3JkaW5nbHkuXG4gICAgICovXG4gICAgcHJvY2Vzc0dyYXBoRm9yU3VwZXJ2aXNlZFByb2plY3Rpb24oKSB7XG4gICAgICAgIGNvbnN0IHsgWSwgWCB9ID0gdGhpcztcbiAgICAgICAgaWYgKFkpIHtcbiAgICAgICAgICAgIGlmIChZLmxlbmd0aCAhPT0gWC5sZW5ndGgpXG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdMZW5ndGggb2YgWCBhbmQgeSBtdXN0IGJlIGVxdWFsJyk7XG4gICAgICAgICAgICBpZiAodGhpcy50YXJnZXRNZXRyaWMgPT09IFwiY2F0ZWdvcmljYWxcIiAvKiBUYXJnZXRNZXRyaWMuY2F0ZWdvcmljYWwgKi8pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBsdCA9IHRoaXMudGFyZ2V0V2VpZ2h0IDwgMS4wO1xuICAgICAgICAgICAgICAgIGNvbnN0IGZhckRpc3QgPSBsdCA/IDIuNSAqICgxLjAgLyAoMS4wIC0gdGhpcy50YXJnZXRXZWlnaHQpKSA6IDEuMGUxMjtcbiAgICAgICAgICAgICAgICB0aGlzLmdyYXBoID0gdGhpcy5jYXRlZ29yaWNhbFNpbXBsaWNpYWxTZXRJbnRlcnNlY3Rpb24odGhpcy5ncmFwaCwgWSwgZmFyRGlzdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUT0RPIChhbmR5Y29lbmVuQCk6IGFkZCBub24tY2F0ZWdvcmljYWwgc3VwZXJ2aXNlZCBlbWJlZGRpbmdzLlxuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgICAqIE1hbnVhbGx5IHN0ZXAgdGhyb3VnaCB0aGUgb3B0aW1pemF0aW9uIHByb2Nlc3Mgb25lIGVwb2NoIGF0IGEgdGltZS5cbiAgICAgKi9cbiAgICBzdGVwKCkge1xuICAgICAgICBjb25zdCB7IGN1cnJlbnRFcG9jaCB9ID0gdGhpcy5vcHRpbWl6YXRpb25TdGF0ZTtcbiAgICAgICAgaWYgKGN1cnJlbnRFcG9jaCA8IHRoaXMuZ2V0TkVwb2NocygpKVxuICAgICAgICAgICAgdGhpcy5vcHRpbWl6ZUxheW91dFN0ZXAoY3VycmVudEVwb2NoKTtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW1pemF0aW9uU3RhdGUuY3VycmVudEVwb2NoO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjb21wdXRlZCBwcm9qZWN0ZWQgZW1iZWRkaW5nLlxuICAgICAqL1xuICAgIGdldEVtYmVkZGluZygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZW1iZWRkaW5nO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21wdXRlIHRoZSBgYG5OZWlnaGJvcnNgYCBuZWFyZXN0IHBvaW50cyBmb3IgZWFjaCBkYXRhIHBvaW50IGluIGBgWGBgXG4gICAgICogVGhpcyBtYXkgYmUgZXhhY3QsIGJ1dCBtb3JlIGxpa2VseSBpcyBhcHByb3hpbWF0ZWQgdmlhIG5lYXJlc3QgbmVpZ2hib3JcbiAgICAgKiBkZXNjZW50LlxuICAgICAqL1xuICAgIG5lYXJlc3ROZWlnaGJvcnMoWCkge1xuICAgICAgICBjb25zdCB7IGRpc3RhbmNlRm4sIG5OZWlnaGJvcnMgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGxvZzIgPSAobikgPT4gTWF0aC5sb2cobikgLyBNYXRoLmxvZygyKTtcbiAgICAgICAgY29uc3QgbWV0cmljTk5EZXNjZW50ID0gbm5EZXNjZW50Lm1ha2VOTkRlc2NlbnQoZGlzdGFuY2VGbiwgdGhpcy5yYW5kb20pO1xuICAgICAgICAvLyBIYW5kbGUgcHl0aG9uMyByb3VuZGluZyBkb3duIGZyb20gMC41IGRpc2NycGFuY3lcbiAgICAgICAgY29uc3Qgcm91bmQgPSAobikgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG4gPT09IDAuNSA/IDAgOiBNYXRoLnJvdW5kKG4pO1xuICAgICAgICB9O1xuICAgICAgICBjb25zdCBuVHJlZXMgPSA1ICsgTWF0aC5mbG9vcihyb3VuZChYLmxlbmd0aCAqKiAwLjUgLyAyMC4wKSk7XG4gICAgICAgIGNvbnN0IG5JdGVycyA9IE1hdGgubWF4KDUsIE1hdGguZmxvb3IoTWF0aC5yb3VuZChsb2cyKFgubGVuZ3RoKSkpKTtcbiAgICAgICAgdGhpcy5ycEZvcmVzdCA9IHRyZWUubWFrZUZvcmVzdChYLCBuTmVpZ2hib3JzLCBuVHJlZXMsIHRoaXMucmFuZG9tKTtcbiAgICAgICAgY29uc3QgbGVhZkFycmF5ID0gdHJlZS5tYWtlTGVhZkFycmF5KHRoaXMucnBGb3Jlc3QpO1xuICAgICAgICBjb25zdCB7IGluZGljZXMsIHdlaWdodHMgfSA9IG1ldHJpY05ORGVzY2VudChYLCBsZWFmQXJyYXksIG5OZWlnaGJvcnMsIG5JdGVycyk7XG4gICAgICAgIHJldHVybiB7IGtubkluZGljZXM6IGluZGljZXMsIGtubkRpc3RhbmNlczogd2VpZ2h0cyB9O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHaXZlbiBhIHNldCBvZiBkYXRhIFgsIGEgbmVpZ2hib3Job29kIHNpemUsIGFuZCBhIG1lYXN1cmUgb2YgZGlzdGFuY2VcbiAgICAgKiBjb21wdXRlIHRoZSBmdXp6eSBzaW1wbGljaWFsIHNldCAoaGVyZSByZXByZXNlbnRlZCBhcyBhIGZ1enp5IGdyYXBoIGluXG4gICAgICogdGhlIGZvcm0gb2YgYSBzcGFyc2UgbWF0cml4KSBhc3NvY2lhdGVkIHRvIHRoZSBkYXRhLiBUaGlzIGlzIGRvbmUgYnlcbiAgICAgKiBsb2NhbGx5IGFwcHJveGltYXRpbmcgZ2VvZGVzaWMgZGlzdGFuY2UgYXQgZWFjaCBwb2ludCwgY3JlYXRpbmcgYSBmdXp6eVxuICAgICAqIHNpbXBsaWNpYWwgc2V0IGZvciBlYWNoIHN1Y2ggcG9pbnQsIGFuZCB0aGVuIGNvbWJpbmluZyBhbGwgdGhlIGxvY2FsXG4gICAgICogZnV6enkgc2ltcGxpY2lhbCBzZXRzIGludG8gYSBnbG9iYWwgb25lIHZpYSBhIGZ1enp5IHVuaW9uLlxuICAgICAqL1xuICAgIGZ1enp5U2ltcGxpY2lhbFNldChYLCBuTmVpZ2hib3JzLCBzZXRPcE1peFJhdGlvID0gMS4wKSB7XG4gICAgICAgIGNvbnN0IHsga25uSW5kaWNlcyA9IFtdLCBrbm5EaXN0YW5jZXMgPSBbXSwgbG9jYWxDb25uZWN0aXZpdHkgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IHsgc2lnbWFzLCByaG9zIH0gPSB0aGlzLnNtb290aEtOTkRpc3RhbmNlKGtubkRpc3RhbmNlcywgbk5laWdoYm9ycywgbG9jYWxDb25uZWN0aXZpdHkpO1xuICAgICAgICBjb25zdCB7IHJvd3MsIGNvbHMsIHZhbHMgfSA9IHRoaXMuY29tcHV0ZU1lbWJlcnNoaXBTdHJlbmd0aHMoa25uSW5kaWNlcywga25uRGlzdGFuY2VzLCBzaWdtYXMsIHJob3MpO1xuICAgICAgICBjb25zdCBzaXplID0gW1gubGVuZ3RoLCBYLmxlbmd0aF07XG4gICAgICAgIGNvbnN0IHNwYXJzZU1hdHJpeCA9IG5ldyBtYXRyaXguU3BhcnNlTWF0cml4KHJvd3MsIGNvbHMsIHZhbHMsIHNpemUpO1xuICAgICAgICBjb25zdCB0cmFuc3Bvc2UgPSBtYXRyaXgudHJhbnNwb3NlKHNwYXJzZU1hdHJpeCk7XG4gICAgICAgIGNvbnN0IHByb2RNYXRyaXggPSBtYXRyaXgucGFpcndpc2VNdWx0aXBseShzcGFyc2VNYXRyaXgsIHRyYW5zcG9zZSk7XG4gICAgICAgIGNvbnN0IGEgPSBtYXRyaXguc3VidHJhY3QobWF0cml4LmFkZChzcGFyc2VNYXRyaXgsIHRyYW5zcG9zZSksIHByb2RNYXRyaXgpO1xuICAgICAgICBjb25zdCBiID0gbWF0cml4Lm11bHRpcGx5U2NhbGFyKGEsIHNldE9wTWl4UmF0aW8pO1xuICAgICAgICBjb25zdCBjID0gbWF0cml4Lm11bHRpcGx5U2NhbGFyKHByb2RNYXRyaXgsIDEuMCAtIHNldE9wTWl4UmF0aW8pO1xuICAgICAgICBjb25zdCByZXN1bHQgPSBtYXRyaXguYWRkKGIsIGMpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21iaW5lIGEgZnV6enkgc2ltcGxpY2lhbCBzZXQgd2l0aCBhbm90aGVyIGZ1enp5IHNpbXBsaWNpYWwgc2V0XG4gICAgICogZ2VuZXJhdGVkIGZyb20gY2F0ZWdvcmljYWwgZGF0YSB1c2luZyBjYXRlZ29yaWNhbCBkaXN0YW5jZXMuIFRoZSB0YXJnZXRcbiAgICAgKiBkYXRhIGlzIGFzc3VtZWQgdG8gYmUgY2F0ZWdvcmljYWwgbGFiZWwgZGF0YSAoYSB2ZWN0b3Igb2YgbGFiZWxzKSxcbiAgICAgKiBhbmQgdGhpcyB3aWxsIHVwZGF0ZSB0aGUgZnV6enkgc2ltcGxpY2lhbCBzZXQgdG8gcmVzcGVjdCB0aGF0IGxhYmVsIGRhdGEuXG4gICAgICovXG4gICAgY2F0ZWdvcmljYWxTaW1wbGljaWFsU2V0SW50ZXJzZWN0aW9uKHNpbXBsaWNpYWxTZXQsIHRhcmdldCwgZmFyRGlzdCwgdW5rbm93bkRpc3QgPSAxLjApIHtcbiAgICAgICAgbGV0IGludGVyc2VjdGlvbiA9IGZhc3RJbnRlcnNlY3Rpb24oc2ltcGxpY2lhbFNldCwgdGFyZ2V0LCB1bmtub3duRGlzdCwgZmFyRGlzdCk7XG4gICAgICAgIGludGVyc2VjdGlvbiA9IG1hdHJpeC5lbGltaW5hdGVaZXJvcyhpbnRlcnNlY3Rpb24pO1xuICAgICAgICByZXR1cm4gcmVzZXRMb2NhbENvbm5lY3Rpdml0eShpbnRlcnNlY3Rpb24pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb21wdXRlIGEgY29udGludW91cyB2ZXJzaW9uIG9mIHRoZSBkaXN0YW5jZSB0byB0aGUga3RoIG5lYXJlc3RcbiAgICAgKiBuZWlnaGJvci4gVGhhdCBpcywgdGhpcyBpcyBzaW1pbGFyIHRvIGtubi1kaXN0YW5jZSBidXQgYWxsb3dzIGNvbnRpbnVvdXNcbiAgICAgKiBrIHZhbHVlcyByYXRoZXIgdGhhbiByZXF1aXJpbmcgYW4gaW50ZWdyYWwgay4gSW4gZXNzY2VuY2Ugd2UgYXJlIHNpbXBseVxuICAgICAqIGNvbXB1dGluZyB0aGUgZGlzdGFuY2Ugc3VjaCB0aGF0IHRoZSBjYXJkaW5hbGl0eSBvZiBmdXp6eSBzZXQgd2UgZ2VuZXJhdGVcbiAgICAgKiBpcyBrLlxuICAgICAqL1xuICAgIHNtb290aEtOTkRpc3RhbmNlKGRpc3RhbmNlcywgaywgbG9jYWxDb25uZWN0aXZpdHkgPSAxLjAsIG5JdGVyID0gNjQsIGJhbmR3aWR0aCA9IDEuMCkge1xuICAgICAgICBjb25zdCB0YXJnZXQgPSAoTWF0aC5sb2coaykgLyBNYXRoLmxvZygyKSkgKiBiYW5kd2lkdGg7XG4gICAgICAgIGNvbnN0IHJobyA9IHV0aWxzLnplcm9zKGRpc3RhbmNlcy5sZW5ndGgpO1xuICAgICAgICBjb25zdCByZXN1bHQgPSB1dGlscy56ZXJvcyhkaXN0YW5jZXMubGVuZ3RoKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkaXN0YW5jZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGxldCBsbyA9IDAuMDtcbiAgICAgICAgICAgIGxldCBoaSA9IEluZmluaXR5O1xuICAgICAgICAgICAgbGV0IG1pZCA9IDEuMDtcbiAgICAgICAgICAgIC8vIFRPRE86IFRoaXMgaXMgdmVyeSBpbmVmZmljaWVudCwgYnV0IHdpbGwgZG8gZm9yIG5vdy4gRklYTUVcbiAgICAgICAgICAgIGNvbnN0IGl0aERpc3RhbmNlcyA9IGRpc3RhbmNlc1tpXTtcbiAgICAgICAgICAgIGNvbnN0IG5vblplcm9EaXN0cyA9IGl0aERpc3RhbmNlcy5maWx0ZXIoKGQpID0+IGQgPiAwLjApO1xuICAgICAgICAgICAgaWYgKG5vblplcm9EaXN0cy5sZW5ndGggPj0gbG9jYWxDb25uZWN0aXZpdHkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IE1hdGguZmxvb3IobG9jYWxDb25uZWN0aXZpdHkpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGludGVycG9sYXRpb24gPSBsb2NhbENvbm5lY3Rpdml0eSAtIGluZGV4O1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgICAgICAgICAgICAgICAgcmhvW2ldID0gbm9uWmVyb0Rpc3RzW2luZGV4IC0gMV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChpbnRlcnBvbGF0aW9uID4gU01PT1RIX0tfVE9MRVJBTkNFKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaG9baV0gKz1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcnBvbGF0aW9uICogKG5vblplcm9EaXN0c1tpbmRleF0gLSBub25aZXJvRGlzdHNbaW5kZXggLSAxXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJob1tpXSA9IGludGVycG9sYXRpb24gKiBub25aZXJvRGlzdHNbMF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSBpZiAobm9uWmVyb0Rpc3RzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICByaG9baV0gPSB1dGlscy5tYXgobm9uWmVyb0Rpc3RzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvciAobGV0IG4gPSAwOyBuIDwgbkl0ZXI7IG4rKykge1xuICAgICAgICAgICAgICAgIGxldCBwc3VtID0gMC4wO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGogPSAxOyBqIDwgZGlzdGFuY2VzW2ldLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGQgPSBkaXN0YW5jZXNbaV1bal0gLSByaG9baV07XG4gICAgICAgICAgICAgICAgICAgIGlmIChkID4gMClcbiAgICAgICAgICAgICAgICAgICAgICAgIHBzdW0gKz0gTWF0aC5leHAoLShkIC8gbWlkKSk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIHBzdW0gKz0gMS4wO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoTWF0aC5hYnMocHN1bSAtIHRhcmdldCkgPCBTTU9PVEhfS19UT0xFUkFOQ0UpXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGlmIChwc3VtID4gdGFyZ2V0KSB7XG4gICAgICAgICAgICAgICAgICAgIGhpID0gbWlkO1xuICAgICAgICAgICAgICAgICAgICBtaWQgPSAobG8gKyBoaSkgLyAyLjA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBsbyA9IG1pZDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGhpID09PSBJbmZpbml0eSlcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pZCAqPSAyO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBtaWQgPSAobG8gKyBoaSkgLyAyLjA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzdWx0W2ldID0gbWlkO1xuICAgICAgICAgICAgLy8gVE9ETzogVGhpcyBpcyB2ZXJ5IGluZWZmaWNpZW50LCBidXQgd2lsbCBkbyBmb3Igbm93LiBGSVhNRVxuICAgICAgICAgICAgaWYgKHJob1tpXSA+IDAuMCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lYW5JdGhEaXN0YW5jZXMgPSB1dGlscy5tZWFuKGl0aERpc3RhbmNlcyk7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdFtpXSA8IE1JTl9LX0RJU1RfU0NBTEUgKiBtZWFuSXRoRGlzdGFuY2VzKVxuICAgICAgICAgICAgICAgICAgICByZXN1bHRbaV0gPSBNSU5fS19ESVNUX1NDQUxFICogbWVhbkl0aERpc3RhbmNlcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lYW5EaXN0YW5jZXMgPSB1dGlscy5tZWFuKGRpc3RhbmNlcy5tYXAodXRpbHMubWVhbikpO1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHRbaV0gPCBNSU5fS19ESVNUX1NDQUxFICogbWVhbkRpc3RhbmNlcylcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0W2ldID0gTUlOX0tfRElTVF9TQ0FMRSAqIG1lYW5EaXN0YW5jZXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgc2lnbWFzOiByZXN1bHQsIHJob3M6IHJobyB9O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBDb25zdHJ1Y3QgdGhlIG1lbWJlcnNoaXAgc3RyZW5ndGggZGF0YSBmb3IgdGhlIDEtc2tlbGV0b24gb2YgZWFjaCBsb2NhbFxuICAgICAqIGZ1enp5IHNpbXBsaWNpYWwgc2V0IC0tIHRoaXMgaXMgZm9ybWVkIGFzIGEgc3BhcnNlIG1hdHJpeCB3aGVyZSBlYWNoIHJvdyBpc1xuICAgICAqIGEgbG9jYWwgZnV6enkgc2ltcGxpY2lhbCBzZXQsIHdpdGggYSBtZW1iZXJzaGlwIHN0cmVuZ3RoIGZvciB0aGVcbiAgICAgKiAxLXNpbXBsZXggdG8gZWFjaCBvdGhlciBkYXRhIHBvaW50LlxuICAgICAqL1xuICAgIGNvbXB1dGVNZW1iZXJzaGlwU3RyZW5ndGhzKGtubkluZGljZXMsIGtubkRpc3RhbmNlcywgc2lnbWFzLCByaG9zKSB7XG4gICAgICAgIGNvbnN0IG5TYW1wbGVzID0ga25uSW5kaWNlcy5sZW5ndGg7XG4gICAgICAgIGNvbnN0IG5OZWlnaGJvcnMgPSBrbm5JbmRpY2VzWzBdLmxlbmd0aDtcbiAgICAgICAgY29uc3Qgcm93cyA9IHV0aWxzLnplcm9zKG5TYW1wbGVzICogbk5laWdoYm9ycyk7XG4gICAgICAgIGNvbnN0IGNvbHMgPSB1dGlscy56ZXJvcyhuU2FtcGxlcyAqIG5OZWlnaGJvcnMpO1xuICAgICAgICBjb25zdCB2YWxzID0gdXRpbHMuemVyb3MoblNhbXBsZXMgKiBuTmVpZ2hib3JzKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuU2FtcGxlczsgaSsrKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IG5OZWlnaGJvcnM7IGorKykge1xuICAgICAgICAgICAgICAgIGxldCB2YWwgPSAwO1xuICAgICAgICAgICAgICAgIGlmIChrbm5JbmRpY2VzW2ldW2pdID09PSAtMSlcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7IC8vIFdlIGRpZG4ndCBnZXQgdGhlIGZ1bGwga25uIGZvciBpXG4gICAgICAgICAgICAgICAgaWYgKGtubkluZGljZXNbaV1bal0gPT09IGkpXG4gICAgICAgICAgICAgICAgICAgIHZhbCA9IDAuMDtcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChrbm5EaXN0YW5jZXNbaV1bal0gLSByaG9zW2ldIDw9IDAuMClcbiAgICAgICAgICAgICAgICAgICAgdmFsID0gMS4wO1xuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgdmFsID0gTWF0aC5leHAoLSgoa25uRGlzdGFuY2VzW2ldW2pdIC0gcmhvc1tpXSkgLyBzaWdtYXNbaV0pKTtcbiAgICAgICAgICAgICAgICByb3dzW2kgKiBuTmVpZ2hib3JzICsgal0gPSBpO1xuICAgICAgICAgICAgICAgIGNvbHNbaSAqIG5OZWlnaGJvcnMgKyBqXSA9IGtubkluZGljZXNbaV1bal07XG4gICAgICAgICAgICAgICAgdmFsc1tpICogbk5laWdoYm9ycyArIGpdID0gdmFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7IHJvd3MsIGNvbHMsIHZhbHMgfTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZSBhIGZ1enp5IHNpbXBsaWNpYWwgc2V0IGVtYmVkZGluZywgdXNpbmcgYSBzcGVjaWZpZWRcbiAgICAgKiBpbml0aWFsaXNhdGlvbiBtZXRob2QgYW5kIHRoZW4gbWluaW1pemluZyB0aGUgZnV6enkgc2V0IGNyb3NzIGVudHJvcHlcbiAgICAgKiBiZXR3ZWVuIHRoZSAxLXNrZWxldG9ucyBvZiB0aGUgaGlnaCBhbmQgbG93IGRpbWVuc2lvbmFsIGZ1enp5IHNpbXBsaWNpYWxcbiAgICAgKiBzZXRzLlxuICAgICAqL1xuICAgIGluaXRpYWxpemVTaW1wbGljaWFsU2V0RW1iZWRkaW5nKCkge1xuICAgICAgICBjb25zdCBuRXBvY2hzID0gdGhpcy5nZXRORXBvY2hzKCk7XG4gICAgICAgIGNvbnN0IHsgbkNvbXBvbmVudHMgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IGdyYXBoVmFsdWVzID0gdGhpcy5ncmFwaC5nZXRWYWx1ZXMoKTtcbiAgICAgICAgbGV0IGdyYXBoTWF4ID0gMDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBncmFwaFZhbHVlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBncmFwaFZhbHVlc1tpXTtcbiAgICAgICAgICAgIGlmIChncmFwaE1heCA8IGdyYXBoVmFsdWVzW2ldKVxuICAgICAgICAgICAgICAgIGdyYXBoTWF4ID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZ3JhcGggPSB0aGlzLmdyYXBoLm1hcCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA8IGdyYXBoTWF4IC8gbkVwb2NocylcbiAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBXZSdyZSBub3QgY29tcHV0aW5nIHRoZSBzcGVjdHJhbCBpbml0aWFsaXphdGlvbiBpbiB0aGlzIGltcGxlbWVudGF0aW9uXG4gICAgICAgIC8vIHVudGlsIHdlIGRldGVybWluZSBhIGJldHRlciBlaWdlbnZhbHVlL2VpZ2VudmVjdG9yIGNvbXB1dGF0aW9uXG4gICAgICAgIC8vIGFwcHJvYWNoXG4gICAgICAgIHRoaXMuZW1iZWRkaW5nID0gdXRpbHMuemVyb3MoZ3JhcGgublJvd3MpLm1hcCgoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdXRpbHMuemVyb3MobkNvbXBvbmVudHMpLm1hcCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHV0aWxzLnRhdVJhbmQodGhpcy5yYW5kb20pICogMjAgKyAtMTA7IC8vIFJhbmRvbSBmcm9tIC0xMCB0byAxMFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBHZXQgZ3JhcGggZGF0YSBpbiBvcmRlcmVkIHdheS4uLlxuICAgICAgICBjb25zdCB3ZWlnaHRzID0gW107XG4gICAgICAgIGNvbnN0IGhlYWQgPSBbXTtcbiAgICAgICAgY29uc3QgdGFpbCA9IFtdO1xuICAgICAgICBjb25zdCByb3dDb2xWYWx1ZXMgPSBncmFwaC5nZXRBbGwoKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3dDb2xWYWx1ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGVudHJ5ID0gcm93Q29sVmFsdWVzW2ldO1xuICAgICAgICAgICAgaWYgKGVudHJ5LnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgd2VpZ2h0cy5wdXNoKGVudHJ5LnZhbHVlKTtcbiAgICAgICAgICAgICAgICB0YWlsLnB1c2goZW50cnkucm93KTtcbiAgICAgICAgICAgICAgICBoZWFkLnB1c2goZW50cnkuY29sKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb25zdCBlcG9jaHNQZXJTYW1wbGUgPSB0aGlzLm1ha2VFcG9jaHNQZXJTYW1wbGUod2VpZ2h0cywgbkVwb2Nocyk7XG4gICAgICAgIHJldHVybiB7IGhlYWQsIHRhaWwsIGVwb2Noc1BlclNhbXBsZSB9O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHaXZlbiBhIHNldCBvZiB3ZWlnaHRzIGFuZCBudW1iZXIgb2YgZXBvY2hzIGdlbmVyYXRlIHRoZSBudW1iZXIgb2ZcbiAgICAgKiBlcG9jaHMgcGVyIHNhbXBsZSBmb3IgZWFjaCB3ZWlnaHQuXG4gICAgICovXG4gICAgbWFrZUVwb2Noc1BlclNhbXBsZSh3ZWlnaHRzLCBuRXBvY2hzKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHV0aWxzLmZpbGxlZCh3ZWlnaHRzLmxlbmd0aCwgLTEuMCk7XG4gICAgICAgIGNvbnN0IG1heCA9IHV0aWxzLm1heCh3ZWlnaHRzKTtcbiAgICAgICAgY29uc3QgblNhbXBsZXMgPSB3ZWlnaHRzLm1hcCgodykgPT4gKHcgLyBtYXgpICogbkVwb2Nocyk7XG4gICAgICAgIG5TYW1wbGVzLmZvckVhY2goKG4sIGkpID0+IHtcbiAgICAgICAgICAgIGlmIChuID4gMClcbiAgICAgICAgICAgICAgICByZXN1bHRbaV0gPSBuRXBvY2hzIC8gblNhbXBsZXNbaV07XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBBc3NpZ25zIG9wdGltaXphdGlvbiBzdGF0ZSBwYXJhbWV0ZXJzIGZyb20gYSBwYXJ0aWFsIG9wdGltaXphdGlvbiBzdGF0ZS5cbiAgICAgKi9cbiAgICBhc3NpZ25PcHRpbWl6YXRpb25TdGF0ZVBhcmFtZXRlcnMoc3RhdGUpIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLm9wdGltaXphdGlvblN0YXRlLCBzdGF0ZSk7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIFNldHMgYSBmZXcgb3B0aW1pemF0aW9uIHN0YXRlIHBhcmFtZXRlcnMgdGhhdCBhcmUgbmVjZXNzYXJ5IGJlZm9yZSBlbnRlcmluZ1xuICAgICAqIHRoZSBvcHRpbWl6YXRpb24gc3RlcCBsb29wLlxuICAgICAqL1xuICAgIHByZXBhcmVGb3JPcHRpbWl6YXRpb25Mb29wKCkge1xuICAgICAgICAvLyBIeXBlcnBhcmFtZXRlcnNcbiAgICAgICAgY29uc3QgeyByZXB1bHNpb25TdHJlbmd0aCwgbGVhcm5pbmdSYXRlLCBuZWdhdGl2ZVNhbXBsZVJhdGUgfSA9IHRoaXM7XG4gICAgICAgIGNvbnN0IHsgZXBvY2hzUGVyU2FtcGxlLCBoZWFkRW1iZWRkaW5nLCB0YWlsRW1iZWRkaW5nLCB9ID0gdGhpcy5vcHRpbWl6YXRpb25TdGF0ZTtcbiAgICAgICAgY29uc3QgZGltID0gaGVhZEVtYmVkZGluZ1swXS5sZW5ndGg7XG4gICAgICAgIGNvbnN0IG1vdmVPdGhlciA9IGhlYWRFbWJlZGRpbmcubGVuZ3RoID09PSB0YWlsRW1iZWRkaW5nLmxlbmd0aDtcbiAgICAgICAgY29uc3QgZXBvY2hzUGVyTmVnYXRpdmVTYW1wbGUgPSBlcG9jaHNQZXJTYW1wbGUubWFwKChlKSA9PiBlIC8gbmVnYXRpdmVTYW1wbGVSYXRlKTtcbiAgICAgICAgY29uc3QgZXBvY2hPZk5leHROZWdhdGl2ZVNhbXBsZSA9IFsuLi5lcG9jaHNQZXJOZWdhdGl2ZVNhbXBsZV07XG4gICAgICAgIGNvbnN0IGVwb2NoT2ZOZXh0U2FtcGxlID0gWy4uLmVwb2Noc1BlclNhbXBsZV07XG4gICAgICAgIHRoaXMuYXNzaWduT3B0aW1pemF0aW9uU3RhdGVQYXJhbWV0ZXJzKHtcbiAgICAgICAgICAgIGVwb2NoT2ZOZXh0U2FtcGxlLFxuICAgICAgICAgICAgZXBvY2hPZk5leHROZWdhdGl2ZVNhbXBsZSxcbiAgICAgICAgICAgIGVwb2Noc1Blck5lZ2F0aXZlU2FtcGxlLFxuICAgICAgICAgICAgbW92ZU90aGVyLFxuICAgICAgICAgICAgaW5pdGlhbEFscGhhOiBsZWFybmluZ1JhdGUsXG4gICAgICAgICAgICBhbHBoYTogbGVhcm5pbmdSYXRlLFxuICAgICAgICAgICAgZ2FtbWE6IHJlcHVsc2lvblN0cmVuZ3RoLFxuICAgICAgICAgICAgZGltLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW5pdGlhbGl6ZXMgb3B0aW1pemF0aW9uIHN0YXRlIGZvciBzdGVwd2lzZSBvcHRpbWl6YXRpb24uXG4gICAgICovXG4gICAgaW5pdGlhbGl6ZU9wdGltaXphdGlvbigpIHtcbiAgICAgICAgLy8gQWxnb3JpdGhtIHN0YXRlXG4gICAgICAgIGNvbnN0IGhlYWRFbWJlZGRpbmcgPSB0aGlzLmVtYmVkZGluZztcbiAgICAgICAgY29uc3QgdGFpbEVtYmVkZGluZyA9IHRoaXMuZW1iZWRkaW5nO1xuICAgICAgICAvLyBJbml0aWFsaXplZCBpbiBpbml0aWFsaXplU2ltcGxpY2lhbFNldEVtYmVkZGluZygpXG4gICAgICAgIGNvbnN0IHsgaGVhZCwgdGFpbCwgZXBvY2hzUGVyU2FtcGxlIH0gPSB0aGlzLm9wdGltaXphdGlvblN0YXRlO1xuICAgICAgICBjb25zdCBuRXBvY2hzID0gdGhpcy5nZXRORXBvY2hzKCk7XG4gICAgICAgIGNvbnN0IG5WZXJ0aWNlcyA9IHRoaXMuZ3JhcGgubkNvbHM7XG4gICAgICAgIGNvbnN0IHsgYSwgYiB9ID0gZmluZEFCUGFyYW1zKHRoaXMuc3ByZWFkLCB0aGlzLm1pbkRpc3QpO1xuICAgICAgICB0aGlzLmFzc2lnbk9wdGltaXphdGlvblN0YXRlUGFyYW1ldGVycyh7XG4gICAgICAgICAgICBoZWFkRW1iZWRkaW5nLFxuICAgICAgICAgICAgdGFpbEVtYmVkZGluZyxcbiAgICAgICAgICAgIGhlYWQsXG4gICAgICAgICAgICB0YWlsLFxuICAgICAgICAgICAgZXBvY2hzUGVyU2FtcGxlLFxuICAgICAgICAgICAgYSxcbiAgICAgICAgICAgIGIsXG4gICAgICAgICAgICBuRXBvY2hzLFxuICAgICAgICAgICAgblZlcnRpY2VzLFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogSW1wcm92ZSBhbiBlbWJlZGRpbmcgdXNpbmcgc3RvY2hhc3RpYyBncmFkaWVudCBkZXNjZW50IHRvIG1pbmltaXplIHRoZVxuICAgICAqIGZ1enp5IHNldCBjcm9zcyBlbnRyb3B5IGJldHdlZW4gdGhlIDEtc2tlbGV0b25zIG9mIHRoZSBoaWdoIGRpbWVuc2lvbmFsXG4gICAgICogYW5kIGxvdyBkaW1lbnNpb25hbCBmdXp6eSBzaW1wbGljaWFsIHNldHMuIEluIHByYWN0aWNlIHRoaXMgaXMgZG9uZSBieVxuICAgICAqIHNhbXBsaW5nIGVkZ2VzIGJhc2VkIG9uIHRoZWlyIG1lbWJlcnNoaXAgc3RyZW5ndGggKHdpdGggdGhlICgxLXApIHRlcm1zXG4gICAgICogY29taW5nIGZyb20gbmVnYXRpdmUgc2FtcGxpbmcgc2ltaWxhciB0byB3b3JkMnZlYykuXG4gICAgICovXG4gICAgb3B0aW1pemVMYXlvdXRTdGVwKG4pIHtcbiAgICAgICAgY29uc3QgeyBvcHRpbWl6YXRpb25TdGF0ZSB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgeyBoZWFkLCB0YWlsLCBoZWFkRW1iZWRkaW5nLCB0YWlsRW1iZWRkaW5nLCBlcG9jaHNQZXJTYW1wbGUsIGVwb2NoT2ZOZXh0U2FtcGxlLCBlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlLCBlcG9jaHNQZXJOZWdhdGl2ZVNhbXBsZSwgbW92ZU90aGVyLCBpbml0aWFsQWxwaGEsIGFscGhhLCBnYW1tYSwgYSwgYiwgZGltLCBuRXBvY2hzLCBuVmVydGljZXMsIH0gPSBvcHRpbWl6YXRpb25TdGF0ZTtcbiAgICAgICAgY29uc3QgY2xpcFZhbHVlID0gNC4wO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGVwb2Noc1BlclNhbXBsZS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGVwb2NoT2ZOZXh0U2FtcGxlW2ldID4gbilcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGNvbnN0IGogPSBoZWFkW2ldO1xuICAgICAgICAgICAgY29uc3QgayA9IHRhaWxbaV07XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50ID0gaGVhZEVtYmVkZGluZ1tqXTtcbiAgICAgICAgICAgIGNvbnN0IG90aGVyID0gdGFpbEVtYmVkZGluZ1trXTtcbiAgICAgICAgICAgIGNvbnN0IGRpc3RTcXVhcmVkID0gckRpc3QoY3VycmVudCwgb3RoZXIpO1xuICAgICAgICAgICAgbGV0IGdyYWRDb2VmZiA9IDA7XG4gICAgICAgICAgICBpZiAoZGlzdFNxdWFyZWQgPiAwKSB7XG4gICAgICAgICAgICAgICAgZ3JhZENvZWZmID0gLTIuMCAqIGEgKiBiICogTWF0aC5wb3coZGlzdFNxdWFyZWQsIGIgLSAxLjApO1xuICAgICAgICAgICAgICAgIGdyYWRDb2VmZiAvPSBhICogTWF0aC5wb3coZGlzdFNxdWFyZWQsIGIpICsgMS4wO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9yIChsZXQgZCA9IDA7IGQgPCBkaW07IGQrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGdyYWREID0gY2xpcChncmFkQ29lZmYgKiAoY3VycmVudFtkXSAtIG90aGVyW2RdKSwgY2xpcFZhbHVlKTtcbiAgICAgICAgICAgICAgICBjdXJyZW50W2RdICs9IGdyYWREICogYWxwaGE7XG4gICAgICAgICAgICAgICAgaWYgKG1vdmVPdGhlcilcbiAgICAgICAgICAgICAgICAgICAgb3RoZXJbZF0gKz0gLWdyYWREICogYWxwaGE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlcG9jaE9mTmV4dFNhbXBsZVtpXSArPSBlcG9jaHNQZXJTYW1wbGVbaV07XG4gICAgICAgICAgICBjb25zdCBuTmVnU2FtcGxlcyA9IE1hdGguZmxvb3IoKG4gLSBlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlW2ldKSAvIGVwb2Noc1Blck5lZ2F0aXZlU2FtcGxlW2ldKTtcbiAgICAgICAgICAgIGZvciAobGV0IHAgPSAwOyBwIDwgbk5lZ1NhbXBsZXM7IHArKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGsgPSB1dGlscy50YXVSYW5kSW50KG5WZXJ0aWNlcywgdGhpcy5yYW5kb20pO1xuICAgICAgICAgICAgICAgIGNvbnN0IG90aGVyID0gdGFpbEVtYmVkZGluZ1trXTtcbiAgICAgICAgICAgICAgICBjb25zdCBkaXN0U3F1YXJlZCA9IHJEaXN0KGN1cnJlbnQsIG90aGVyKTtcbiAgICAgICAgICAgICAgICBsZXQgZ3JhZENvZWZmID0gMC4wO1xuICAgICAgICAgICAgICAgIGlmIChkaXN0U3F1YXJlZCA+IDAuMCkge1xuICAgICAgICAgICAgICAgICAgICBncmFkQ29lZmYgPSAyLjAgKiBnYW1tYSAqIGI7XG4gICAgICAgICAgICAgICAgICAgIGdyYWRDb2VmZiAvPVxuICAgICAgICAgICAgICAgICAgICAgICAgKDAuMDAxICsgZGlzdFNxdWFyZWQpICogKGEgKiBNYXRoLnBvdyhkaXN0U3F1YXJlZCwgYikgKyAxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoaiA9PT0gaykge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgZCA9IDA7IGQgPCBkaW07IGQrKykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgZ3JhZEQgPSA0LjA7XG4gICAgICAgICAgICAgICAgICAgIGlmIChncmFkQ29lZmYgPiAwLjApXG4gICAgICAgICAgICAgICAgICAgICAgICBncmFkRCA9IGNsaXAoZ3JhZENvZWZmICogKGN1cnJlbnRbZF0gLSBvdGhlcltkXSksIGNsaXBWYWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRbZF0gKz0gZ3JhZEQgKiBhbHBoYTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlcG9jaE9mTmV4dE5lZ2F0aXZlU2FtcGxlW2ldICs9IG5OZWdTYW1wbGVzICogZXBvY2hzUGVyTmVnYXRpdmVTYW1wbGVbaV07XG4gICAgICAgIH1cbiAgICAgICAgb3B0aW1pemF0aW9uU3RhdGUuYWxwaGEgPSBpbml0aWFsQWxwaGEgKiAoMS4wIC0gbiAvIG5FcG9jaHMpO1xuICAgICAgICBvcHRpbWl6YXRpb25TdGF0ZS5jdXJyZW50RXBvY2ggKz0gMTtcbiAgICAgICAgcmV0dXJuIGhlYWRFbWJlZGRpbmc7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIEltcHJvdmUgYW4gZW1iZWRkaW5nIHVzaW5nIHN0b2NoYXN0aWMgZ3JhZGllbnQgZGVzY2VudCB0byBtaW5pbWl6ZSB0aGVcbiAgICAgKiBmdXp6eSBzZXQgY3Jvc3MgZW50cm9weSBiZXR3ZWVuIHRoZSAxLXNrZWxldG9ucyBvZiB0aGUgaGlnaCBkaW1lbnNpb25hbFxuICAgICAqIGFuZCBsb3cgZGltZW5zaW9uYWwgZnV6enkgc2ltcGxpY2lhbCBzZXRzLiBJbiBwcmFjdGljZSB0aGlzIGlzIGRvbmUgYnlcbiAgICAgKiBzYW1wbGluZyBlZGdlcyBiYXNlZCBvbiB0aGVpciBtZW1iZXJzaGlwIHN0cmVuZ3RoICh3aXRoIHRoZSAoMS1wKSB0ZXJtc1xuICAgICAqIGNvbWluZyBmcm9tIG5lZ2F0aXZlIHNhbXBsaW5nIHNpbWlsYXIgdG8gd29yZDJ2ZWMpLlxuICAgICAqL1xuICAgIG9wdGltaXplTGF5b3V0QXN5bmMoZXBvY2hDYWxsYmFjayA9ICgpID0+IHRydWUpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN0ZXAgPSBhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBuRXBvY2hzLCBjdXJyZW50RXBvY2ggfSA9IHRoaXMub3B0aW1pemF0aW9uU3RhdGU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZW1iZWRkaW5nID0gdGhpcy5vcHRpbWl6ZUxheW91dFN0ZXAoY3VycmVudEVwb2NoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXBvY2hDb21wbGV0ZWQgPSB0aGlzLm9wdGltaXphdGlvblN0YXRlLmN1cnJlbnRFcG9jaDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkU3RvcCA9IGVwb2NoQ2FsbGJhY2soZXBvY2hDb21wbGV0ZWQpID09PSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNGaW5pc2hlZCA9IGVwb2NoQ29tcGxldGVkID09PSBuRXBvY2hzO1xuICAgICAgICAgICAgICAgICAgICBpZiAoIXNob3VsZFN0b3AgJiYgIWlzRmluaXNoZWQpXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHN0ZXAoKSwgMCk7XG4gICAgICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNvbHZlKGlzRmluaXNoZWQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHN0ZXAoKSwgMCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBJbXByb3ZlIGFuIGVtYmVkZGluZyB1c2luZyBzdG9jaGFzdGljIGdyYWRpZW50IGRlc2NlbnQgdG8gbWluaW1pemUgdGhlXG4gICAgICogZnV6enkgc2V0IGNyb3NzIGVudHJvcHkgYmV0d2VlbiB0aGUgMS1za2VsZXRvbnMgb2YgdGhlIGhpZ2ggZGltZW5zaW9uYWxcbiAgICAgKiBhbmQgbG93IGRpbWVuc2lvbmFsIGZ1enp5IHNpbXBsaWNpYWwgc2V0cy4gSW4gcHJhY3RpY2UgdGhpcyBpcyBkb25lIGJ5XG4gICAgICogc2FtcGxpbmcgZWRnZXMgYmFzZWQgb24gdGhlaXIgbWVtYmVyc2hpcCBzdHJlbmd0aCAod2l0aCB0aGUgKDEtcCkgdGVybXNcbiAgICAgKiBjb21pbmcgZnJvbSBuZWdhdGl2ZSBzYW1wbGluZyBzaW1pbGFyIHRvIHdvcmQydmVjKS5cbiAgICAgKi9cbiAgICBvcHRpbWl6ZUxheW91dChlcG9jaENhbGxiYWNrID0gKCkgPT4gdHJ1ZSkge1xuICAgICAgICBsZXQgaXNGaW5pc2hlZCA9IGZhbHNlO1xuICAgICAgICBsZXQgZW1iZWRkaW5nID0gW107XG4gICAgICAgIHdoaWxlICghaXNGaW5pc2hlZCkge1xuICAgICAgICAgICAgY29uc3QgeyBuRXBvY2hzLCBjdXJyZW50RXBvY2ggfSA9IHRoaXMub3B0aW1pemF0aW9uU3RhdGU7XG4gICAgICAgICAgICBlbWJlZGRpbmcgPSB0aGlzLm9wdGltaXplTGF5b3V0U3RlcChjdXJyZW50RXBvY2gpO1xuICAgICAgICAgICAgY29uc3QgZXBvY2hDb21wbGV0ZWQgPSB0aGlzLm9wdGltaXphdGlvblN0YXRlLmN1cnJlbnRFcG9jaDtcbiAgICAgICAgICAgIGNvbnN0IHNob3VsZFN0b3AgPSBlcG9jaENhbGxiYWNrKGVwb2NoQ29tcGxldGVkKSA9PT0gZmFsc2U7XG4gICAgICAgICAgICBpc0ZpbmlzaGVkID0gZXBvY2hDb21wbGV0ZWQgPT09IG5FcG9jaHMgfHwgc2hvdWxkU3RvcDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZW1iZWRkaW5nO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBudW1iZXIgb2YgZXBvY2hzIGZvciBvcHRpbWl6aW5nIHRoZSBwcm9qZWN0aW9uLlxuICAgICAqIE5PVEU6IFRoaXMgaGV1cmlzdGljIGRpZmZlcnMgZnJvbSB0aGUgcHl0aG9uIHZlcnNpb25cbiAgICAgKi9cbiAgICBnZXRORXBvY2hzKCkge1xuICAgICAgICBjb25zdCBncmFwaCA9IHRoaXMuZ3JhcGg7XG4gICAgICAgIGlmICh0aGlzLm5FcG9jaHMgPiAwKVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubkVwb2NocztcbiAgICAgICAgaWYgKCFncmFwaClcbiAgICAgICAgICAgIHJldHVybiAyMDA7XG4gICAgICAgIGNvbnN0IGxlbmd0aCA9IGdyYXBoLm5Sb3dzO1xuICAgICAgICBpZiAobGVuZ3RoIDw9IDI1MDApXG4gICAgICAgICAgICByZXR1cm4gNTAwO1xuICAgICAgICBlbHNlIGlmIChsZW5ndGggPD0gNTAwMClcbiAgICAgICAgICAgIHJldHVybiA0MDA7XG4gICAgICAgIGVsc2UgaWYgKGxlbmd0aCA8PSA3NTAwKVxuICAgICAgICAgICAgcmV0dXJuIDMwMDtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmV0dXJuIDIwMDtcbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gZXVjbGlkZWFuKHgsIHkpIHtcbiAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHgubGVuZ3RoOyBpKyspXG4gICAgICAgIHJlc3VsdCArPSAoeFtpXSAtIHlbaV0pICoqIDI7XG4gICAgcmV0dXJuIE1hdGguc3FydChyZXN1bHQpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIG51bWVyaWMoeCwgeSkge1xuICAgIGNvbnN0IHJlc3VsdCA9IE1hdGguYWJzKHggLSB5KTtcbiAgICByZXR1cm4gcmVzdWx0O1xufVxuZXhwb3J0IGZ1bmN0aW9uIGNvc2luZSh4LCB5KSB7XG4gICAgbGV0IHJlc3VsdCA9IDAuMDtcbiAgICBsZXQgbm9ybVggPSAwLjA7XG4gICAgbGV0IG5vcm1ZID0gMC4wO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgeC5sZW5ndGg7IGkrKykge1xuICAgICAgICByZXN1bHQgKz0geFtpXSAqIHlbaV07XG4gICAgICAgIG5vcm1YICs9IHhbaV0gKiogMjtcbiAgICAgICAgbm9ybVkgKz0geVtpXSAqKiAyO1xuICAgIH1cbiAgICBpZiAobm9ybVggPT09IDAgJiYgbm9ybVkgPT09IDApXG4gICAgICAgIHJldHVybiAwO1xuICAgIGVsc2UgaWYgKG5vcm1YID09PSAwIHx8IG5vcm1ZID09PSAwKVxuICAgICAgICByZXR1cm4gMS4wO1xuICAgIGVsc2VcbiAgICAgICAgcmV0dXJuIDEuMCAtIHJlc3VsdCAvIE1hdGguc3FydChub3JtWCAqIG5vcm1ZKTtcbn1cbi8qKlxuICogQW4gaW50ZXJmYWNlIHJlcHJlc2VudGluZyB0aGUgb3B0aW1pemF0aW9uIHN0YXRlIHRyYWNrZWQgYmV0d2VlbiBzdGVwcyBvZlxuICogdGhlIFNHRCBvcHRpbWl6YXRpb25cbiAqL1xuY2xhc3MgT3B0aW1pemF0aW9uU3RhdGUge1xuICAgIGN1cnJlbnRFcG9jaCA9IDA7XG4gICAgLy8gRGF0YSB0cmFja2VkIGR1cmluZyBvcHRpbWl6YXRpb24gc3RlcHMuXG4gICAgaGVhZEVtYmVkZGluZyA9IFtdO1xuICAgIHRhaWxFbWJlZGRpbmcgPSBbXTtcbiAgICBoZWFkID0gW107XG4gICAgdGFpbCA9IFtdO1xuICAgIGVwb2Noc1BlclNhbXBsZSA9IFtdO1xuICAgIGVwb2NoT2ZOZXh0U2FtcGxlID0gW107XG4gICAgZXBvY2hPZk5leHROZWdhdGl2ZVNhbXBsZSA9IFtdO1xuICAgIGVwb2Noc1Blck5lZ2F0aXZlU2FtcGxlID0gW107XG4gICAgbW92ZU90aGVyID0gdHJ1ZTtcbiAgICBpbml0aWFsQWxwaGEgPSAxLjA7XG4gICAgYWxwaGEgPSAxLjA7XG4gICAgZ2FtbWEgPSAxLjA7XG4gICAgYSA9IDEuNTc2OTQzNDYwMzExMzA3NztcbiAgICBiID0gMC44OTUwNjA4Nzc5MTA5NzMzO1xuICAgIGRpbSA9IDI7XG4gICAgbkVwb2NocyA9IDUwMDtcbiAgICBuVmVydGljZXMgPSAwO1xufVxuLyoqXG4gKiBTdGFuZGFyZCBjbGFtcGluZyBvZiBhIHZhbHVlIGludG8gYSBmaXhlZCByYW5nZVxuICovXG5mdW5jdGlvbiBjbGlwKHgsIGNsaXBWYWx1ZSkge1xuICAgIGlmICh4ID4gY2xpcFZhbHVlKVxuICAgICAgICByZXR1cm4gY2xpcFZhbHVlO1xuICAgIGVsc2UgaWYgKHggPCAtY2xpcFZhbHVlKVxuICAgICAgICByZXR1cm4gLWNsaXBWYWx1ZTtcbiAgICBlbHNlXG4gICAgICAgIHJldHVybiB4O1xufVxuLyoqXG4gKiBSZWR1Y2VkIEV1Y2xpZGVhbiBkaXN0YW5jZS5cbiAqL1xuZnVuY3Rpb24gckRpc3QoeCwgeSkge1xuICAgIGxldCByZXN1bHQgPSAwLjA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB4Lmxlbmd0aDsgaSsrKVxuICAgICAgICByZXN1bHQgKz0gTWF0aC5wb3coeFtpXSAtIHlbaV0sIDIpO1xuICAgIHJldHVybiByZXN1bHQ7XG59XG4vKipcbiAqIEZpdCBhLCBiIHBhcmFtcyBmb3IgdGhlIGRpZmZlcmVudGlhYmxlIGN1cnZlIHVzZWQgaW4gbG93ZXJcbiAqIGRpbWVuc2lvbmFsIGZ1enp5IHNpbXBsaWNpYWwgY29tcGxleCBjb25zdHJ1Y3Rpb24uIFdlIHdhbnQgdGhlXG4gKiBzbW9vdGggY3VydmUgKGZyb20gYSBwcmUtZGVmaW5lZCBmYW1pbHkgd2l0aCBzaW1wbGUgZ3JhZGllbnQpIHRoYXRcbiAqIGJlc3QgbWF0Y2hlcyBhbiBvZmZzZXQgZXhwb25lbnRpYWwgZGVjYXkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kQUJQYXJhbXMoc3ByZWFkLCBtaW5EaXN0KSB7XG4gICAgY29uc3QgY3VydmUgPSAoW2EsIGJdKSA9PiAoeCkgPT4ge1xuICAgICAgICByZXR1cm4gMS4wIC8gKDEuMCArIGEgKiB4ICoqICgyICogYikpO1xuICAgIH07XG4gICAgY29uc3QgeHYgPSB1dGlsc1xuICAgICAgICAubGluZWFyKDAsIHNwcmVhZCAqIDMsIDMwMClcbiAgICAgICAgLm1hcCgodmFsKSA9PiAodmFsIDwgbWluRGlzdCA/IDEuMCA6IHZhbCkpO1xuICAgIGNvbnN0IHl2ID0gdXRpbHMuemVyb3MoeHYubGVuZ3RoKS5tYXAoKHZhbCwgaW5kZXgpID0+IHtcbiAgICAgICAgY29uc3QgZ3RlID0geHZbaW5kZXhdID49IG1pbkRpc3Q7XG4gICAgICAgIHJldHVybiBndGUgPyBNYXRoLmV4cCgtKHh2W2luZGV4XSAtIG1pbkRpc3QpIC8gc3ByZWFkKSA6IHZhbDtcbiAgICB9KTtcbiAgICBjb25zdCBpbml0aWFsVmFsdWVzID0gWzAuNSwgMC41XTtcbiAgICBjb25zdCBkYXRhID0geyB4OiB4diwgeTogeXYgfTtcbiAgICAvLyBEZWZhdWx0IG9wdGlvbnMgZm9yIHRoZSBhbGdvcml0aG0gKGZyb20gZ2l0aHViIGV4YW1wbGUpXG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgICAgZGFtcGluZzogMS41LFxuICAgICAgICBpbml0aWFsVmFsdWVzLFxuICAgICAgICBncmFkaWVudERpZmZlcmVuY2U6IDEwZS0yLFxuICAgICAgICBtYXhJdGVyYXRpb25zOiAxMDAsXG4gICAgICAgIGVycm9yVG9sZXJhbmNlOiAxMGUtMyxcbiAgICB9O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuZXctY2FwXG4gICAgY29uc3QgeyBwYXJhbWV0ZXJWYWx1ZXMgfSA9IExNKGRhdGEsIGN1cnZlLCBvcHRpb25zKTtcbiAgICBjb25zdCBbYSwgYl0gPSBwYXJhbWV0ZXJWYWx1ZXM7XG4gICAgcmV0dXJuIHsgYSwgYiB9O1xufVxuLyoqXG4gKiBVbmRlciB0aGUgYXNzdW1wdGlvbiBvZiBjYXRlZ29yaWNhbCBkaXN0YW5jZSBmb3IgdGhlIGludGVyc2VjdGluZ1xuICogc2ltcGxpY2lhbCBzZXQgcGVyZm9ybSBhIGZhc3QgaW50ZXJzZWN0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmFzdEludGVyc2VjdGlvbihncmFwaCwgdGFyZ2V0LCB1bmtub3duRGlzdCA9IDEuMCwgZmFyRGlzdCA9IDUuMCkge1xuICAgIHJldHVybiBncmFwaC5tYXAoKHZhbHVlLCByb3csIGNvbCkgPT4ge1xuICAgICAgICBpZiAodGFyZ2V0W3Jvd10gPT09IC0xIHx8IHRhcmdldFtjb2xdID09PSAtMSlcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSAqIE1hdGguZXhwKC11bmtub3duRGlzdCk7XG4gICAgICAgIGVsc2UgaWYgKHRhcmdldFtyb3ddICE9PSB0YXJnZXRbY29sXSlcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSAqIE1hdGguZXhwKC1mYXJEaXN0KTtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0pO1xufVxuLyoqXG4gKiBSZXNldCB0aGUgbG9jYWwgY29ubmVjdGl2aXR5IHJlcXVpcmVtZW50IC0tIGVhY2ggZGF0YSBzYW1wbGUgc2hvdWxkXG4gKiBoYXZlIGNvbXBsZXRlIGNvbmZpZGVuY2UgaW4gYXQgbGVhc3Qgb25lIDEtc2ltcGxleCBpbiB0aGUgc2ltcGxpY2lhbCBzZXQuXG4gKiBXZSBjYW4gZW5mb3JjZSB0aGlzIGJ5IGxvY2FsbHkgcmVzY2FsaW5nIGNvbmZpZGVuY2VzLCBhbmQgdGhlbiByZW1lcmdpbmcgdGhlXG4gKiBkaWZmZXJlbnQgbG9jYWwgc2ltcGxpY2lhbCBzZXRzIHRvZ2V0aGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzZXRMb2NhbENvbm5lY3Rpdml0eShzaW1wbGljaWFsU2V0KSB7XG4gICAgc2ltcGxpY2lhbFNldCA9IG1hdHJpeC5ub3JtYWxpemUoc2ltcGxpY2lhbFNldCwgXCJtYXhcIiAvKiBtYXRyaXguTm9ybVR5cGUubWF4ICovKTtcbiAgICBjb25zdCB0cmFuc3Bvc2UgPSBtYXRyaXgudHJhbnNwb3NlKHNpbXBsaWNpYWxTZXQpO1xuICAgIGNvbnN0IHByb2RNYXRyaXggPSBtYXRyaXgucGFpcndpc2VNdWx0aXBseSh0cmFuc3Bvc2UsIHNpbXBsaWNpYWxTZXQpO1xuICAgIHNpbXBsaWNpYWxTZXQgPSBtYXRyaXguYWRkKHNpbXBsaWNpYWxTZXQsIG1hdHJpeC5zdWJ0cmFjdCh0cmFuc3Bvc2UsIHByb2RNYXRyaXgpKTtcbiAgICByZXR1cm4gbWF0cml4LmVsaW1pbmF0ZVplcm9zKHNpbXBsaWNpYWxTZXQpO1xufVxuLyoqXG4gKiBHaXZlbiBpbmRpY2VzIGFuZCB3ZWlnaHRzIGFuZCBhbiBvcmlnaW5hbCBlbWJlZGRpbmdzXG4gKiBpbml0aWFsaXplIHRoZSBwb3NpdGlvbnMgb2YgbmV3IHBvaW50cyByZWxhdGl2ZSB0byB0aGVcbiAqIGluZGljZXMgYW5kIHdlaWdodHMgKG9mIHRoZWlyIG5laWdoYm9ycyBpbiB0aGUgc291cmNlIGRhdGEpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5pdFRyYW5zZm9ybShpbmRpY2VzLCB3ZWlnaHRzLCBlbWJlZGRpbmcpIHtcbiAgICBjb25zdCByZXN1bHQgPSB1dGlsc1xuICAgICAgICAuemVyb3MoaW5kaWNlcy5sZW5ndGgpXG4gICAgICAgIC5tYXAoKF96KSA9PiB1dGlscy56ZXJvcyhlbWJlZGRpbmdbMF0ubGVuZ3RoKSk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbmRpY2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgaW5kaWNlc1swXS5sZW5ndGg7IGorKykge1xuICAgICAgICAgICAgZm9yIChsZXQgZCA9IDA7IGQgPCBlbWJlZGRpbmdbMF0ubGVuZ3RoOyBkKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhID0gaW5kaWNlc1tpXVtqXTtcbiAgICAgICAgICAgICAgICByZXN1bHRbaV1bZF0gKz0gd2VpZ2h0c1tpXVtqXSAqIGVtYmVkZGluZ1thXVtkXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pZFcxaGNDNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW5WdFlYQXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFc05FSkJRVFJDTzBGQlF6VkNPenM3T3pzN096czdPenM3T3pzN096dEhRV2xDUnp0QlFVVklPenM3T3p0SFFVdEhPMEZCUlVnN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdSMEVyUWtjN1FVRkZTQ3hQUVVGUExFdEJRVXNzU1VGQlNTeE5RVUZOTEZGQlFWRXNRMEZCUXp0QlFVTXZRaXhQUVVGUExFdEJRVXNzVFVGQlRTeE5RVUZOTEZWQlFWVXNRMEZCUXp0QlFVTnVReXhQUVVGUExFdEJRVXNzVTBGQlV5eE5RVUZOTEdOQlFXTXNRMEZCUXp0QlFVTXhReXhQUVVGUExFdEJRVXNzU1VGQlNTeE5RVUZOTEZGQlFWRXNRMEZCUXp0QlFVTXZRaXhQUVVGUExFdEJRVXNzUzBGQlN5eE5RVUZOTEZOQlFWTXNRMEZCUXp0QlFVTnFReXhQUVVGUExFVkJRVVVzVFVGQlRTeDNRa0ZCZDBJc1EwRkJRenRCUVdGNFF5eE5RVUZOTEd0Q1FVRnJRaXhIUVVGSExFbEJRVWtzUTBGQlF6dEJRVU5vUXl4TlFVRk5MR2RDUVVGblFpeEhRVUZITEVsQlFVa3NRMEZCUXp0QlFXMUlPVUk3T3pzN096czdPenM3T3pzN096czdPenM3UjBGdFFrYzdRVUZEU0N4TlFVRk5MRTlCUVU4c1NVRkJTVHRKUVVOUUxGbEJRVmtzUjBGQlJ5eEhRVUZITEVOQlFVTTdTVUZEYmtJc2FVSkJRV2xDTEVkQlFVY3NSMEZCUnl4RFFVRkRPMGxCUTNoQ0xFOUJRVThzUjBGQlJ5eEhRVUZITEVOQlFVTTdTVUZEWkN4WFFVRlhMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMmhDTEU5QlFVOHNSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRXaXhWUVVGVkxFZEJRVWNzUlVGQlJTeERRVUZETzBsQlEyaENMR3RDUVVGclFpeEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTjJRaXhOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTnlRaXhwUWtGQmFVSXNSMEZCUnl4SFFVRkhMRU5CUVVNN1NVRkRlRUlzWVVGQllTeEhRVUZITEVkQlFVY3NRMEZCUXp0SlFVTndRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlEySXNhMEpCUVd0Q0xFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlJXcERMQ3RDUVVFclFqdEpRVU4yUWl4WlFVRlpMR2RFUVVFMFFqdEpRVU40UXl4WlFVRlpMRWRCUVVjc1IwRkJSeXhEUVVGRE8wbEJRMjVDTEdkQ1FVRm5RaXhIUVVGSExFVkJRVVVzUTBGQlF6dEpRVVYwUWl4VlFVRlZMRWRCUVdVc1QwRkJUeXhEUVVGRE8wbEJSWHBETEdkRlFVRm5SVHRKUVVONFJDeFZRVUZWTEVOQlFXTTdTVUZEZUVJc1dVRkJXU3hEUVVGak8wbEJSV3hETERaRFFVRTJRenRKUVVOeVF5eExRVUZMTEVOQlFYVkNPMGxCUXpWQ0xFTkJRVU1zUTBGQlZUdEpRVU5ZTEdGQlFXRXNSMEZCUnl4TFFVRkxMRU5CUVVNN1NVRkRkRUlzVVVGQlVTeEhRVUZ2UWl4RlFVRkZMRU5CUVVNN1NVRkRMMElzWTBGQll5eERRVUU0UWp0SlFVTTFReXhaUVVGWkxFTkJRVFJDTzBsQlEzaERMRTFCUVUwc1EwRkJjMEk3U1VGRE5VSXNWMEZCVnl4RFFVRjFRanRKUVVVeFF5eDVRMEZCZVVNN1NVRkRha01zUTBGQlF5eERRVUZaTzBsQlJYSkNMSE5DUVVGelFqdEpRVU5rTEZOQlFWTXNSMEZCWlN4RlFVRkZMRU5CUVVNN1NVRkRNMElzYVVKQlFXbENMRWRCUVVjc1NVRkJTU3hwUWtGQmFVSXNSVUZCUlN4RFFVRkRPMGxCUjNCRUxFbEJRVWtzVTBGQlV6dFJRVU5ZTEU5QlFVOHNTVUZCU1N4RFFVRkRMRlZCUVZVc1EwRkJRenRKUVVONlFpeERRVUZETzBsQlEwUXNXVUZCV1N4VFFVRjVRaXhGUVVGRk8xRkJRM0pETEUxQlFVMHNVVUZCVVN4SFFVRkhMRU5CUVVNc1IwRkJlVUlzUlVGQlJTeEZRVUZGTzFsQlF6ZERMRmxCUVZrN1dVRkRXaXhKUVVGSkxFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlFVTXNTMEZCU3l4VFFVRlRPMmRDUVVGRkxFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03VVVGRGVrUXNRMEZCUXl4RFFVRkRPMUZCUlVZc1VVRkJVU3hEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzFGQlEzWkNMRkZCUVZFc1EwRkJReXhqUVVGakxFTkJRVU1zUTBGQlF6dFJRVU42UWl4UlFVRlJMRU5CUVVNc2JVSkJRVzFDTEVOQlFVTXNRMEZCUXp0UlFVTTVRaXhSUVVGUkxFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTTdVVUZEY0VJc1VVRkJVU3hEUVVGRExHRkJRV0VzUTBGQlF5eERRVUZETzFGQlEzaENMRkZCUVZFc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dFJRVU53UWl4UlFVRlJMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU03VVVGRGRrSXNVVUZCVVN4RFFVRkRMRzlDUVVGdlFpeERRVUZETEVOQlFVTTdVVUZETDBJc1VVRkJVU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzFGQlEyNUNMRkZCUVZFc1EwRkJReXh0UWtGQmJVSXNRMEZCUXl4RFFVRkRPMUZCUXpsQ0xGRkJRVkVzUTBGQlF5eGxRVUZsTEVOQlFVTXNRMEZCUXp0UlFVTXhRaXhSUVVGUkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTTdVVUZEYmtJc1VVRkJVU3hEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRU5CUVVNN1VVRkRMMElzU1VGQlNTeERRVUZETEdkQ1FVRm5RaXhIUVVGSExFMUJRVTBzUTBGQlF5eFZRVUZWTEVsQlFVa3NTVUZCU1N4RFFVRkRMRlZCUVZVc1NVRkJTU3hKUVVGSkxFTkJRVU1zWjBKQlFXZENMRU5CUVVNN1NVRkRlRVlzUTBGQlF6dEpRVVZFT3p0UFFVVkhPMGxCUTBnc1IwRkJSeXhEUVVGRExFTkJRVk03VVVGRFdDeEpRVUZKTEVOQlFVTXNZVUZCWVN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRM1JDTEVsQlFVa3NRMEZCUXl4alFVRmpMRVZCUVVVc1EwRkJRenRSUVVWMFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNN1NVRkRlRUlzUTBGQlF6dEpRVVZFT3pzN1QwRkhSenRKUVVOSUxFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlExb3NRMEZCVXl4RlFVTlVMRmRCUVc5RUxFZEJRVWNzUlVGQlJTeERRVUZETEVsQlFVazdVVUZGT1VRc1NVRkJTU3hEUVVGRExHRkJRV0VzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVVjBRaXhOUVVGTkxFbEJRVWtzUTBGQlF5eHRRa0ZCYlVJc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dFJRVU42UXl4UFFVRlBMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU03U1VGRGVFSXNRMEZCUXp0SlFVVkVPenRQUVVWSE8wbEJRMGdzZFVKQlFYVkNMRU5CUVVNc1EwRkJWeXhGUVVGRkxGTkJRU3RDTEVWQlFVVTdVVUZEY0VVc1NVRkJTU3hEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEV0N4SlFVRkpMRU5CUVVNc1dVRkJXU3hIUVVGSExFMUJRVTBzUTBGQlF5eFpRVUZaTEVsQlFVa3NTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJRenRSUVVNM1JDeEpRVUZKTEVOQlFVTXNXVUZCV1N4SFFVRkhMRTFCUVUwc1EwRkJReXhaUVVGWkxFbEJRVWtzU1VGQlNTeERRVUZETEZsQlFWa3NRMEZCUXp0UlFVTTNSQ3hKUVVGSkxFTkJRVU1zWjBKQlFXZENMRWRCUVVjc1RVRkJUU3hEUVVGRExHZENRVUZuUWl4SlFVRkpMRWxCUVVrc1EwRkJReXhuUWtGQlowSXNRMEZCUXp0SlFVTXpSU3hEUVVGRE8wbEJSVVE3TzA5QlJVYzdTVUZEU0N4cFFrRkJhVUlzUTBGQlF5eFZRVUZ6UWl4RlFVRkZMRmxCUVhkQ08xRkJRMmhGTEVsQlFVa3NRMEZCUXl4VlFVRlZMRWRCUVVjc1ZVRkJWU3hEUVVGRE8xRkJRemRDTEVsQlFVa3NRMEZCUXl4WlFVRlpMRWRCUVVjc1dVRkJXU3hEUVVGRE8wbEJRMjVETEVOQlFVTTdTVUZGUkRzN096czdUMEZMUnp0SlFVTklMR0ZCUVdFc1EwRkJReXhEUVVGVE8xRkJRM0pDTEVsQlFVa3NRMEZCUXl4RFFVRkRMRTFCUVUwc1NVRkJTU3hKUVVGSkxFTkJRVU1zVlVGQlZUdFpRVU0zUWl4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExESkNRVUV5UWl4RFFVRkRMRU5CUVVNc1RVRkJUU3d5UWtGQk1rSXNTVUZCU1N4RFFVRkRMRlZCUVZVc2MwUkJRWE5FTEVOQlFVTXNRMEZCUXp0UlFVZDJTaXcwUlVGQk5FVTdVVUZETlVVc1NVRkJTU3hKUVVGSkxFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4SlFVRkpMRU5CUVVNc1lVRkJZVHRaUVVOd1F5eFBRVUZQTEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJRenRSUVVjelFpeEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVWWUxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExGbEJRVmtzUlVGQlJUdFpRVU14UXl4TlFVRk5MRlZCUVZVc1IwRkJSeXhKUVVGSkxFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRE5VTXNTVUZCU1N4RFFVRkRMRlZCUVZVc1IwRkJSeXhWUVVGVkxFTkJRVU1zVlVGQlZTeERRVUZETzFsQlEzaERMRWxCUVVrc1EwRkJReXhaUVVGWkxFZEJRVWNzVlVGQlZTeERRVUZETEZsQlFWa3NRMEZCUXp0VFFVTTNRenRSUVVWRUxFbEJRVWtzUTBGQlF5eExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRMR3RDUVVGclFpeERRVU5zUXl4RFFVRkRMRVZCUTBRc1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGRFppeEpRVUZKTEVOQlFVTXNZVUZCWVN4RFFVTnVRaXhEUVVGRE8xRkJSVVlzZVVSQlFYbEVPMUZCUTNwRUxFbEJRVWtzUTBGQlF5eGhRVUZoTEVWQlFVVXNRMEZCUXp0UlFVTnlRaXhKUVVGSkxFTkJRVU1zVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRk0wTXNlVVJCUVhsRU8xRkJRM3BFTEVsQlFVa3NRMEZCUXl4dFEwRkJiVU1zUlVGQlJTeERRVUZETzFGQlJUTkRMRTFCUVUwc1JVRkRTaXhKUVVGSkxFVkJRMG9zU1VGQlNTeEZRVU5LTEdWQlFXVXNSMEZEYUVJc1IwRkJSeXhKUVVGSkxFTkJRVU1zWjBOQlFXZERMRVZCUVVVc1EwRkJRenRSUVVVMVF5eHhRMEZCY1VNN1VVRkRja01zU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhEUVVGRExFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZEYmtNc1NVRkJTU3hEUVVGRExHbENRVUZwUWl4RFFVRkRMRWxCUVVrc1IwRkJSeXhKUVVGSkxFTkJRVU03VVVGRGJrTXNTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeERRVUZETEdWQlFXVXNSMEZCUnl4bFFVRmxMRU5CUVVNN1VVRkZla1FzZVVOQlFYbERPMUZCUTNwRExFbEJRVWtzUTBGQlF5eHpRa0ZCYzBJc1JVRkJSU3hEUVVGRE8xRkJRemxDTEVsQlFVa3NRMEZCUXl3d1FrRkJNRUlzUlVGQlJTeERRVUZETzFGQlEyeERMRWxCUVVrc1EwRkJReXhoUVVGaExFZEJRVWNzU1VGQlNTeERRVUZETzFGQlJURkNMRTlCUVU4c1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETzBsQlF6TkNMRU5CUVVNN1NVRkZUeXhoUVVGaE8xRkJRMjVDTEUxQlFVMHNSVUZCUXl4WlFVRlpMRVZCUVVVc1kwRkJZeXhGUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEcxQ1FVRnRRaXhEUVVOc1JTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVTm9RaXhEUVVGRE8xRkJRMFlzU1VGQlNTeERRVUZETEZsQlFWa3NSMEZCUnl4WlFVRlpMRU5CUVVNN1VVRkRha01zU1VGQlNTeERRVUZETEdOQlFXTXNSMEZCUnl4alFVRmpMRU5CUVVNN1VVRkRja01zU1VGQlNTeERRVUZETEUxQlFVMHNSMEZCUnl4VFFVRlRMRU5CUVVNc2RVSkJRWFZDTEVOQlFVTXNTVUZCU1N4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRE8wbEJRMjVGTEVOQlFVTTdTVUZGVHl4bFFVRmxMRU5CUVVNc1EwRkJVenRSUVVNdlFpeE5RVUZOTEZWQlFWVXNSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWeXhEUVVGRE8xRkJRM0JETEUxQlFVMHNXVUZCV1N4SFFVRkhMRWxCUVVrc1EwRkJReXhaUVVGaExFTkJRVU03VVVGRGVFTXNUVUZCVFN4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRSUVVOc1F5eE5RVUZOTEZkQlFWY3NSMEZCUnl4SlFVRkpMRTFCUVUwc1EwRkJReXhaUVVGWkxFTkJRVU1zUlVGQlJTeEZRVUZGTEVWQlFVVXNSVUZCUlN4RlFVRkZMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU03VVVGRE9VUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEZWQlFWVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3V1VGRE1VTXNUVUZCVFN4SFFVRkhMRWRCUVVjc1ZVRkJWU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlF6RkNMRTFCUVUwc1UwRkJVeXhIUVVGSExGbEJRVmtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTnNReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkRia01zVFVGQlRTeFJRVUZSTEVkQlFVY3NSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU40UWl4TlFVRk5MRkZCUVZFc1IwRkJSeXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdaMEpCUXpsQ0xFbEJRVWtzVVVGQlVTeEhRVUZITEVOQlFVTTdiMEpCUTJRc1YwRkJWeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVWQlFVVXNVVUZCVVN4RlFVRkZMRkZCUVZFc1EwRkJReXhEUVVGRE8yRkJRekZETzFOQlEwWTdVVUZGUkN4TlFVRk5MRk5CUVZNc1IwRkJSeXhOUVVGTkxFTkJRVU1zVTBGQlV5eERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRPMUZCUTJoRUxFOUJRVThzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4WFFVRlhMRVZCUVVVc1UwRkJVeXhEUVVGRExFTkJRVU03U1VGRGFFUXNRMEZCUXp0SlFVVkVPenRQUVVWSE8wbEJRMGdzVTBGQlV5eERRVUZETEZkQlFXMUNPMUZCUXpOQ0xESkNRVUV5UWp0UlFVTXpRaXhOUVVGTkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNaQ0xFbEJRVWtzVDBGQlR5eExRVUZMTEZOQlFWTXNTVUZCU1N4UFFVRlBMRU5CUVVNc1RVRkJUU3hMUVVGTExFTkJRVU03V1VGREwwTXNUVUZCVFN4SlFVRkpMRXRCUVVzc1EwRkJReXgxUWtGQmRVSXNRMEZCUXl4RFFVRkRPMUZCUnpORExFbEJRVWtzVlVGQlZTeEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zUTBGQlF6dFJRVU4yUlN4VlFVRlZMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RlFVRkZMRlZCUVZVc1EwRkJReXhEUVVGRE8xRkJRMnhFTEUxQlFVMHNTVUZCU1N4SFFVRkhMRk5CUVZNc1EwRkJReXhuUWtGQlowSXNRMEZEY2tNc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGRFlpeFBRVUZQTEVWQlExQXNWMEZCVnl4RlFVTllMRlZCUVZVc1JVRkRWaXhKUVVGSkxFTkJRVU1zWTBGQll5eEZRVU51UWl4SlFVRkpMRU5CUVVNc1dVRkJXU3hGUVVOcVFpeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVTmFMRU5CUVVNN1VVRkZSaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTlCUVU4c1JVRkJSU3hKUVVGSkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVsQlFVa3NSVUZCUlN4WFFVRlhMRU5CUVVNc1EwRkJRenRSUVVWNlJTeEpRVUZKTEVWQlFVTXNUMEZCVHl4RlFVRkZMRTlCUVU4c1JVRkJSU3hUUVVGVExFVkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xRkJSVFZFTEU5QlFVOHNSMEZCUnl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUlVGQlJTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVNeFJDeFRRVUZUTEVkQlFVY3NVMEZCVXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFVkJRVVVzU1VGQlNTeERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkZPVVFzVFVGQlRTeDVRa0ZCZVVJc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc2FVSkJRV2xDTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRNVVVzVFVGQlRTeEZRVUZETEUxQlFVMHNSVUZCUlN4SlFVRkpMRVZCUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zYVVKQlFXbENMRU5CUXpORExGTkJRVk1zUlVGRFZDeEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVTm1MSGxDUVVGNVFpeERRVU14UWl4RFFVRkRPMUZCUlVZc1RVRkJUU3hGUVVGRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVXNTVUZCU1N4RlFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExEQkNRVUV3UWl4RFFVTjRSQ3hQUVVGUExFVkJRMUFzVTBGQlV5eEZRVU5VTEUxQlFVMHNSVUZEVGl4SlFVRkpMRU5CUTB3c1EwRkJRenRSUVVWR0xFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVTXNWMEZCVnl4RFFVRkRMRTFCUVUwc1JVRkJSU3hQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdVVUZEYkVRc1NVRkJTU3hMUVVGTExFZEJRVWNzU1VGQlNTeE5RVUZOTEVOQlFVTXNXVUZCV1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUlRWRUxHOUZRVUZ2UlR0UlFVTndSU3h6UlVGQmMwVTdVVUZEZEVVc0swUkJRU3RFTzFGQlJTOUVMRTFCUVUwc1RVRkJUU3hIUVVGSExFMUJRVTBzUTBGQlF5eFRRVUZUTEVOQlFVTXNTMEZCU3l4blEwRkJjVUlzUTBGQlF6dFJRVVV6UkN4TlFVRk5MRk5CUVZNc1IwRkJSeXhOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMUZCUTNoRExFMUJRVTBzVDBGQlR5eEhRVUZITEZkQlFWY3NRMEZCUXl4TlFVRk5MRU5CUVVNN1VVRkZia01zVFVGQlRTeFJRVUZSTEVkQlFVY3NTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkRPVUlzVTBGQlV5eERRVUZETEU5QlFVOHNSVUZEYWtJc1QwRkJUeXhGUVVOUUxFbEJRVWtzUTBGQlF5eFZRVUZWTEVOQlEyaENMRU5CUVVNN1VVRkZSaXhOUVVGTkxGRkJRVkVzUjBGQlJ5eExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVTTVRaXhUUVVGVExFTkJRVU1zVFVGQlRTeEZRVU5vUWl4UFFVRlBMRVZCUTFBc1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGRGFFSXNRMEZCUXp0UlFVVkdMRTFCUVUwc1UwRkJVeXhIUVVGSExHRkJRV0VzUTBGQlF5eFJRVUZSTEVWQlFVVXNVVUZCVVN4RlFVRkZMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dFJRVVZ3UlN4TlFVRk5MRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdXVUZETlVJc1NVRkJTU3hEUVVGRExFOUJRVThzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTnNRaXhMUVVGTExFTkJRVU1zUzBGQlN5eEpRVUZKTEV0QlFVc3NRMEZCUXl4RFFVRkRPMmRDUVVOd1FpeEhRVUZITEVOQlFVTXNRMEZCUXp0blFrRkRUQ3hGUVVGRkxFTkJRVU03VVVGRlVDeE5RVUZOTEZGQlFWRXNSMEZCUnl4TFFVRkxPMkZCUTI1Q0xGTkJRVk1zUlVGQlJUdGhRVU5ZTEUxQlFVMHNRMEZCUXl4RFFVRkRMRWRCUVVjc1JVRkJSU3hIUVVGSExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU53UkN4TFFVRkxMRWRCUVVjc1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEV0QlFVc3NSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhMUVVGTExFZEJRVWNzVVVGQlVTeEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNaRkxFdEJRVXNzUjBGQlJ5eE5RVUZOTEVOQlFVTXNZMEZCWXl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8xRkJSWEpETEUxQlFVMHNaVUZCWlN4SFFVRkhMRWxCUVVrc1EwRkJReXh0UWtGQmJVSXNRMEZET1VNc1MwRkJTeXhEUVVGRExGTkJRVk1zUlVGQlJTeEZRVU5xUWl4UFFVRlBMRU5CUTFJc1EwRkJRenRSUVVOR0xFMUJRVTBzU1VGQlNTeEhRVUZITEV0QlFVc3NRMEZCUXl4UFFVRlBMRVZCUVVVc1EwRkJRenRSUVVNM1FpeE5RVUZOTEVsQlFVa3NSMEZCUnl4TFFVRkxMRU5CUVVNc1QwRkJUeXhGUVVGRkxFTkJRVU03VVVGRk4wSXNiMFZCUVc5Rk8xRkJRM0JGTEVsQlFVa3NRMEZCUXl4cFEwRkJhVU1zUTBGQlF6dFpRVU55UXl4aFFVRmhMRVZCUVVVc1UwRkJVenRaUVVONFFpeGhRVUZoTEVWQlFVVXNTVUZCU1N4RFFVRkRMRk5CUVZNN1dVRkROMElzU1VGQlNUdFpRVU5LTEVsQlFVazdXVUZEU2l4WlFVRlpMRVZCUVVVc1EwRkJRenRaUVVObUxFOUJRVTg3V1VGRFVDeFRRVUZUTEVWQlFVVXNTMEZCU3l4RFFVRkRMRTlCUVU4c1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU0zUWl4bFFVRmxPMU5CUTJoQ0xFTkJRVU1zUTBGQlF6dFJRVU5JTEVsQlFVa3NRMEZCUXl3d1FrRkJNRUlzUlVGQlJTeERRVUZETzFGQlJXeERMRTlCUVU4c1NVRkJTU3hEUVVGRExHTkJRV01zUlVGQlJTeERRVUZETzBsQlF5OUNMRU5CUVVNN1NVRkZSRHM3TzA5QlIwYzdTVUZEU3l4dFEwRkJiVU03VVVGRGVrTXNUVUZCVFN4RlFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZEY0VJc1NVRkJTU3hEUVVGRExFVkJRVVU3V1VGRFRDeEpRVUZKTEVOQlFVTXNRMEZCUXl4TlFVRk5MRXRCUVVzc1EwRkJReXhEUVVGRExFMUJRVTA3WjBKQlEzWkNMRTFCUVUwc1NVRkJTU3hMUVVGTExFTkJRVU1zYVVOQlFXbERMRU5CUVVNc1EwRkJRenRaUVVkeVJDeEpRVUZKTEVsQlFVa3NRMEZCUXl4WlFVRlpMR2xFUVVFMlFpeEZRVUZGTzJkQ1FVTnNSQ3hOUVVGTkxFVkJRVVVzUjBGQlJ5eEpRVUZKTEVOQlFVTXNXVUZCV1N4SFFVRkhMRWRCUVVjc1EwRkJRenRuUWtGRGJrTXNUVUZCVFN4UFFVRlBMRWRCUVVjc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMRWRCUVVjc1EwRkJReXhIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF6dG5Ra0ZEZEVVc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNiME5CUVc5RExFTkJRM0JFTEVsQlFVa3NRMEZCUXl4TFFVRkxMRVZCUTFZc1EwRkJReXhGUVVORUxFOUJRVThzUTBGRFVpeERRVUZETzJGQlEwZzdXVUZEUkN4cFJVRkJhVVU3VTBGRGJFVTdTVUZEU0N4RFFVRkRPMGxCUlVRN08wOUJSVWM3U1VGRFNDeEpRVUZKTzFGQlEwWXNUVUZCVFN4RlFVRkRMRmxCUVZrc1JVRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eHBRa0ZCYVVJc1EwRkJRenRSUVVVNVF5eEpRVUZKTEZsQlFWa3NSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRk8xbEJRMnhETEVsQlFVa3NRMEZCUXl4clFrRkJhMElzUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXp0UlFVVjRReXhQUVVGUExFbEJRVWtzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhaUVVGWkxFTkJRVU03U1VGRE4wTXNRMEZCUXp0SlFVVkVPenRQUVVWSE8wbEJRMGdzV1VGQldUdFJRVU5XTEU5QlFVOHNTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJRenRKUVVONFFpeERRVUZETzBsQlJVUTdPenM3VDBGSlJ6dEpRVU5MTEdkQ1FVRm5RaXhEUVVGRExFTkJRVk03VVVGRGFFTXNUVUZCVFN4RlFVRkRMRlZCUVZVc1JVRkJSU3hWUVVGVkxFVkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZEZEVNc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZUTEVWQlFVVXNSVUZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU4wUkN4TlFVRk5MR1ZCUVdVc1IwRkJSeXhUUVVGVExFTkJRVU1zWVVGQllTeERRVUZETEZWQlFWVXNSVUZCUlN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03VVVGRmVrVXNiVVJCUVcxRU8xRkJRMjVFTEUxQlFVMHNTMEZCU3l4SFFVRkhMRU5CUVVNc1EwRkJVeXhGUVVGRkxFVkJRVVU3V1VGRE1VSXNUMEZCVHl4RFFVRkRMRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEZGtNc1EwRkJReXhEUVVGRE8xRkJSVVlzVFVGQlRTeE5RVUZOTEVkQlFVY3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRWxCUVVrc1IwRkJSeXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZETjBRc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRVZCUVVVc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkZia1VzU1VGQlNTeERRVUZETEZGQlFWRXNSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zUlVGQlJTeFZRVUZWTEVWQlFVVXNUVUZCVFN4RlFVRkZMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVVZ3UlN4TlFVRk5MRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zWVVGQllTeERRVUZETEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRSUVVOd1JDeE5RVUZOTEVWQlFVTXNUMEZCVHl4RlFVRkZMRTlCUVU4c1JVRkJReXhIUVVGSExHVkJRV1VzUTBGRGVFTXNRMEZCUXl4RlFVTkVMRk5CUVZNc1JVRkRWQ3hWUVVGVkxFVkJRMVlzVFVGQlRTeERRVU5RTEVOQlFVTTdVVUZEUml4UFFVRlBMRVZCUVVNc1ZVRkJWU3hGUVVGRkxFOUJRVThzUlVGQlJTeFpRVUZaTEVWQlFVVXNUMEZCVHl4RlFVRkRMRU5CUVVNN1NVRkRkRVFzUTBGQlF6dEpRVVZFT3pzN096czdPMDlCVDBjN1NVRkRTeXhyUWtGQmEwSXNRMEZEZUVJc1EwRkJVeXhGUVVOVUxGVkJRV3RDTEVWQlEyeENMR0ZCUVdFc1IwRkJSeXhIUVVGSE8xRkJSVzVDTEUxQlFVMHNSVUZCUXl4VlFVRlZMRWRCUVVjc1JVRkJSU3hGUVVGRkxGbEJRVmtzUjBGQlJ5eEZRVUZGTEVWQlFVVXNhVUpCUVdsQ0xFVkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZGY2tVc1RVRkJUU3hGUVVGRExFMUJRVTBzUlVGQlJTeEpRVUZKTEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc2FVSkJRV2xDTEVOQlF6TkRMRmxCUVZrc1JVRkRXaXhWUVVGVkxFVkJRMVlzYVVKQlFXbENMRU5CUTJ4Q0xFTkJRVU03VVVGRlJpeE5RVUZOTEVWQlFVTXNTVUZCU1N4RlFVRkZMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNNRUpCUVRCQ0xFTkJRM2hFTEZWQlFWVXNSVUZEVml4WlFVRlpMRVZCUTFvc1RVRkJUU3hGUVVOT0xFbEJRVWtzUTBGRFRDeERRVUZETzFGQlJVWXNUVUZCVFN4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRSUVVOc1F5eE5RVUZOTEZsQlFWa3NSMEZCUnl4SlFVRkpMRTFCUVUwc1EwRkJReXhaUVVGWkxFTkJRVU1zU1VGQlNTeEZRVUZGTEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU03VVVGRmNrVXNUVUZCVFN4VFFVRlRMRWRCUVVjc1RVRkJUU3hEUVVGRExGTkJRVk1zUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXp0UlFVTnFSQ3hOUVVGTkxGVkJRVlVzUjBGQlJ5eE5RVUZOTEVOQlFVTXNaMEpCUVdkQ0xFTkJRVU1zV1VGQldTeEZRVUZGTEZOQlFWTXNRMEZCUXl4RFFVRkRPMUZCUlhCRkxFMUJRVTBzUTBGQlF5eEhRVUZITEUxQlFVMHNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eFpRVUZaTEVWQlFVVXNVMEZCVXl4RFFVRkRMRVZCUVVVc1ZVRkJWU3hEUVVGRExFTkJRVU03VVVGRE0wVXNUVUZCVFN4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExHTkJRV01zUTBGQlF5eERRVUZETEVWQlFVVXNZVUZCWVN4RFFVRkRMRU5CUVVNN1VVRkRiRVFzVFVGQlRTeERRVUZETEVkQlFVY3NUVUZCVFN4RFFVRkRMR05CUVdNc1EwRkJReXhWUVVGVkxFVkJRVVVzUjBGQlJ5eEhRVUZITEdGQlFXRXNRMEZCUXl4RFFVRkRPMUZCUTJwRkxFMUJRVTBzVFVGQlRTeEhRVUZITEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlJXaERMRTlCUVU4c1RVRkJUU3hEUVVGRE8wbEJRMmhDTEVOQlFVTTdTVUZGUkRzN096czdUMEZMUnp0SlFVTkxMRzlEUVVGdlF5eERRVU14UXl4aFFVRnJReXhGUVVOc1F5eE5RVUZuUWl4RlFVTm9RaXhQUVVGbExFVkJRMllzVjBGQlZ5eEhRVUZITEVkQlFVYzdVVUZGYWtJc1NVRkJTU3haUVVGWkxFZEJRVWNzWjBKQlFXZENMRU5CUTJwRExHRkJRV0VzUlVGRFlpeE5RVUZOTEVWQlEwNHNWMEZCVnl4RlFVTllMRTlCUVU4c1EwRkRVaXhEUVVGRE8xRkJRMFlzV1VGQldTeEhRVUZITEUxQlFVMHNRMEZCUXl4alFVRmpMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU03VVVGRGJrUXNUMEZCVHl4elFrRkJjMElzUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXp0SlFVTTVReXhEUVVGRE8wbEJSVVE3T3pzN096dFBRVTFITzBsQlEwc3NhVUpCUVdsQ0xFTkJRM1pDTEZOQlFXdENMRVZCUTJ4Q0xFTkJRVk1zUlVGRFZDeHBRa0ZCYVVJc1IwRkJSeXhIUVVGSExFVkJRM1pDTEV0QlFVc3NSMEZCUnl4RlFVRkZMRVZCUTFZc1UwRkJVeXhIUVVGSExFZEJRVWM3VVVGRlppeE5RVUZOTEUxQlFVMHNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEZOQlFWTXNRMEZCUXp0UlFVTjJSQ3hOUVVGTkxFZEJRVWNzUjBGQlJ5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dFJRVU14UXl4TlFVRk5MRTFCUVUwc1IwRkJSeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRSUVVVM1F5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVONlF5eEpRVUZKTEVWQlFVVXNSMEZCUnl4SFFVRkhMRU5CUVVNN1dVRkRZaXhKUVVGSkxFVkJRVVVzUjBGQlJ5eFJRVUZSTEVOQlFVTTdXVUZEYkVJc1NVRkJTU3hIUVVGSExFZEJRVWNzUjBGQlJ5eERRVUZETzFsQlJXUXNOa1JCUVRaRU8xbEJRemRFTEUxQlFVMHNXVUZCV1N4SFFVRkhMRk5CUVZNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5zUXl4TlFVRk5MRmxCUVZrc1IwRkJSeXhaUVVGWkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTTdXVUZGZWtRc1NVRkJTU3haUVVGWkxFTkJRVU1zVFVGQlRTeEpRVUZKTEdsQ1FVRnBRaXhGUVVGRk8yZENRVU0xUXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEdsQ1FVRnBRaXhEUVVGRExFTkJRVU03WjBKQlF6VkRMRTFCUVUwc1lVRkJZU3hIUVVGSExHbENRVUZwUWl4SFFVRkhMRXRCUVVzc1EwRkJRenRuUWtGRGFFUXNTVUZCU1N4TFFVRkxMRWRCUVVjc1EwRkJReXhGUVVGRk8yOUNRVU5pTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhaUVVGWkxFTkJRVU1zUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRPMjlDUVVOcVF5eEpRVUZKTEdGQlFXRXNSMEZCUnl4clFrRkJhMElzUlVGQlJUdDNRa0ZEZEVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6czBRa0ZEU2l4aFFVRmhMRWRCUVVjc1EwRkJReXhaUVVGWkxFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NXVUZCV1N4RFFVRkRMRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzNGQ1FVTnVSVHRwUWtGRFJqdHhRa0ZCVFR0dlFrRkRUQ3hIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NZVUZCWVN4SFFVRkhMRmxCUVZrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dHBRa0ZETVVNN1lVRkRSanRwUWtGQlRTeEpRVUZKTEZsQlFWa3NRMEZCUXl4TlFVRk5MRWRCUVVjc1EwRkJReXhGUVVGRk8yZENRVU5zUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRoUVVOc1F6dFpRVVZFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eExRVUZMTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1owSkJRemxDTEVsQlFVa3NTVUZCU1N4SFFVRkhMRWRCUVVjc1EwRkJRenRuUWtGRFppeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdHZRa0ZETlVNc1RVRkJUU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0dlFrRkRia01zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXp0M1FrRkRVQ3hKUVVGSkxFbEJRVWtzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdPM2RDUVVVM1FpeEpRVUZKTEVsQlFVa3NSMEZCUnl4RFFVRkRPMmxDUVVObU8yZENRVVZFTEVsQlFVa3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhKUVVGSkxFZEJRVWNzVFVGQlRTeERRVUZETEVkQlFVY3NhMEpCUVd0Q08yOUNRVU01UXl4TlFVRk5PMmRDUVVkU0xFbEJRVWtzU1VGQlNTeEhRVUZITEUxQlFVMHNSVUZCUlR0dlFrRkRha0lzUlVGQlJTeEhRVUZITEVkQlFVY3NRMEZCUXp0dlFrRkRWQ3hIUVVGSExFZEJRVWNzUTBGQlF5eEZRVUZGTEVkQlFVY3NSVUZCUlN4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRE8ybENRVU4yUWp0eFFrRkJUVHR2UWtGRFRDeEZRVUZGTEVkQlFVY3NSMEZCUnl4RFFVRkRPMjlDUVVOVUxFbEJRVWtzUlVGQlJTeExRVUZMTEZGQlFWRTdkMEpCUTJwQ0xFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTTdPM2RDUVVWVUxFZEJRVWNzUjBGQlJ5eERRVUZETEVWQlFVVXNSMEZCUnl4RlFVRkZMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU03YVVKQlEzcENPMkZCUTBZN1dVRkZSQ3hOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NSMEZCUnl4RFFVRkRPMWxCUldoQ0xEWkVRVUUyUkR0WlFVTTNSQ3hKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRVZCUVVVN1owSkJRMmhDTEUxQlFVMHNaMEpCUVdkQ0xFZEJRVWNzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRuUWtGRGJFUXNTVUZCU1N4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzWjBKQlFXZENMRWRCUVVjc1owSkJRV2RDTzI5Q1FVTnFSQ3hOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NaMEpCUVdkQ0xFZEJRVWNzWjBKQlFXZENMRU5CUVVNN1lVRkRia1E3YVVKQlFVMDdaMEpCUTB3c1RVRkJUU3hoUVVGaExFZEJRVWNzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1IwRkJSeXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVNMVJDeEpRVUZKTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhuUWtGQlowSXNSMEZCUnl4aFFVRmhPMjlDUVVNNVF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1owSkJRV2RDTEVkQlFVY3NZVUZCWVN4RFFVRkRPMkZCUTJoRU8xTkJRMFk3VVVGRlJDeFBRVUZQTEVWQlFVTXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hKUVVGSkxFVkJRVVVzUjBGQlJ5eEZRVUZETEVOQlFVTTdTVUZEY2tNc1EwRkJRenRKUVVWRU96czdPenRQUVV0SE8wbEJRMHNzTUVKQlFUQkNMRU5CUTJoRExGVkJRVzFDTEVWQlEyNUNMRmxCUVhGQ0xFVkJRM0pDTEUxQlFXZENMRVZCUTJoQ0xFbEJRV003VVVGRlpDeE5RVUZOTEZGQlFWRXNSMEZCUnl4VlFVRlZMRU5CUVVNc1RVRkJUU3hEUVVGRE8xRkJRMjVETEUxQlFVMHNWVUZCVlN4SFFVRkhMRlZCUVZVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTTdVVUZGZUVNc1RVRkJUU3hKUVVGSkxFZEJRVWNzUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRWRCUVVjc1ZVRkJWU3hEUVVGRExFTkJRVU03VVVGRGFFUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVkQlFVY3NWVUZCVlN4RFFVRkRMRU5CUVVNN1VVRkRhRVFzVFVGQlRTeEpRVUZKTEVkQlFVY3NTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFZEJRVWNzVlVGQlZTeERRVUZETEVOQlFVTTdVVUZGYUVRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRkZCUVZFc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU5xUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NWVUZCVlN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yZENRVU51UXl4SlFVRkpMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03WjBKQlExb3NTVUZCU1N4VlFVRlZMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMjlDUVVONlFpeFRRVUZUTEVOQlFVTXNiVU5CUVcxRE8yZENRVVV2UXl4SlFVRkpMRlZCUVZVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNTMEZCU3l4RFFVRkRPMjlDUVVONFFpeEhRVUZITEVkQlFVY3NSMEZCUnl4RFFVRkRPM0ZDUVVOUUxFbEJRVWtzV1VGQldTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4SFFVRkhPMjlDUVVNeFF5eEhRVUZITEVkQlFVY3NSMEZCUnl4RFFVRkRPenR2UWtGRlZpeEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkhhRVVzU1VGQlNTeERRVUZETEVOQlFVTXNSMEZCUnl4VlFVRlZMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzJkQ1FVTTNRaXhKUVVGSkxFTkJRVU1zUTBGQlF5eEhRVUZITEZWQlFWVXNSMEZCUnl4RFFVRkRMRU5CUVVNc1IwRkJSeXhWUVVGVkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1owSkJRelZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRWRCUVVjc1ZVRkJWU3hIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVkQlFVY3NRMEZCUXp0aFFVTm9RenRUUVVOR08xRkJSVVFzVDBGQlR5eEZRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1NVRkJTU3hGUVVGRExFTkJRVU03U1VGRE5VSXNRMEZCUXp0SlFVVkVPenM3T3p0UFFVdEhPMGxCUTBzc1owTkJRV2RETzFGQlEzUkRMRTFCUVUwc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXp0UlFVVnNReXhOUVVGTkxFVkJRVU1zVjBGQlZ5eEZRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRPMUZCUXpOQ0xFMUJRVTBzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03VVVGRE0wTXNTVUZCU1N4UlFVRlJMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRMnBDTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFhRVUZYTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRek5ETEUxQlFVMHNTMEZCU3l4SFFVRkhMRmRCUVZjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU0zUWl4SlFVRkpMRkZCUVZFc1IwRkJSeXhYUVVGWExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTXpRaXhSUVVGUkxFZEJRVWNzUzBGQlN5eERRVUZETzFOQlEzQkNPMUZCUlVRc1RVRkJUU3hMUVVGTExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhMUVVGTExFVkJRVVVzUlVGQlJUdFpRVU55UXl4SlFVRkpMRXRCUVVzc1IwRkJSeXhSUVVGUkxFZEJRVWNzVDBGQlR6dG5Ra0ZETlVJc1QwRkJUeXhEUVVGRExFTkJRVU03TzJkQ1FVVlVMRTlCUVU4c1MwRkJTeXhEUVVGRE8xRkJRMnBDTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUlVnc2VVVkJRWGxGTzFGQlEzcEZMR2xGUVVGcFJUdFJRVU5xUlN4WFFVRlhPMUZCUTFnc1NVRkJTU3hEUVVGRExGTkJRVk1zUjBGQlJ5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZPMWxCUTJwRUxFOUJRVThzUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4WFFVRlhMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eEZRVUZGTzJkQ1FVTjJReXhQUVVGUExFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFVkJRVVVzUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMSGRDUVVGM1FqdFpRVU40UlN4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOTUxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlJVZ3NiVU5CUVcxRE8xRkJRMjVETEUxQlFVMHNUMEZCVHl4SFFVRmhMRVZCUVVVc1EwRkJRenRSUVVNM1FpeE5RVUZOTEVsQlFVa3NSMEZCWVN4RlFVRkZMRU5CUVVNN1VVRkRNVUlzVFVGQlRTeEpRVUZKTEVkQlFXRXNSVUZCUlN4RFFVRkRPMUZCUXpGQ0xFMUJRVTBzV1VGQldTeEhRVUZITEV0QlFVc3NRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJRenRSUVVOd1F5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzV1VGQldTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVNMVF5eE5RVUZOTEV0QlFVc3NSMEZCUnl4WlFVRlpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRE9VSXNTVUZCU1N4TFFVRkxMRU5CUVVNc1MwRkJTeXhGUVVGRk8yZENRVU5tTEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzJkQ1FVTXhRaXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRuUWtGRGNrSXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdZVUZEZEVJN1UwRkRSanRSUVVORUxFMUJRVTBzWlVGQlpTeEhRVUZITEVsQlFVa3NRMEZCUXl4dFFrRkJiVUlzUTBGQlF5eFBRVUZQTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1VVRkZia1VzVDBGQlR5eEZRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1pVRkJaU3hGUVVGRExFTkJRVU03U1VGRGRrTXNRMEZCUXp0SlFVVkVPenM3VDBGSFJ6dEpRVU5MTEcxQ1FVRnRRaXhEUVVGRExFOUJRV2xDTEVWQlFVVXNUMEZCWlR0UlFVTTFSQ3hOUVVGTkxFMUJRVTBzUjBGQlJ5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTnNSQ3hOUVVGTkxFZEJRVWNzUjBGQlJ5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8xRkJReTlDTEUxQlFVMHNVVUZCVVN4SFFVRkhMRTlCUVU4c1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFZEJRVWNzUTBGQlF5eEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRPMUZCUTNwRUxGRkJRVkVzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3V1VGRGVFSXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJRenRuUWtGQlJTeE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1QwRkJUeXhIUVVGSExGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTXZReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5JTEU5QlFVOHNUVUZCVFN4RFFVRkRPMGxCUTJoQ0xFTkJRVU03U1VGRlJEczdUMEZGUnp0SlFVTkxMR2xEUVVGcFF5eERRVUZETEV0QlFXbERPMUZCUTNwRkxFMUJRVTBzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeEZRVUZGTEV0QlFVc3NRMEZCUXl4RFFVRkRPMGxCUXk5RExFTkJRVU03U1VGRlJEczdPMDlCUjBjN1NVRkRTeXd3UWtGQk1FSTdVVUZEYUVNc2EwSkJRV3RDTzFGQlEyeENMRTFCUVUwc1JVRkJReXhwUWtGQmFVSXNSVUZCUlN4WlFVRlpMRVZCUVVVc2EwSkJRV3RDTEVWQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN1VVRkZia1VzVFVGQlRTeEZRVU5LTEdWQlFXVXNSVUZEWml4aFFVRmhMRVZCUTJJc1lVRkJZU3hIUVVOa0xFZEJRVWNzU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhEUVVGRE8xRkJSVE5DTEUxQlFVMHNSMEZCUnl4SFFVRkhMR0ZCUVdFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTTdVVUZEY0VNc1RVRkJUU3hUUVVGVExFZEJRVWNzWVVGQllTeERRVUZETEUxQlFVMHNTMEZCU3l4aFFVRmhMRU5CUVVNc1RVRkJUU3hEUVVGRE8xRkJSV2hGTEUxQlFVMHNkVUpCUVhWQ0xFZEJRVWNzWlVGQlpTeERRVUZETEVkQlFVY3NRMEZEYWtRc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNSMEZCUnl4clFrRkJhMElzUTBGRE9VSXNRMEZCUXp0UlFVTkdMRTFCUVUwc2VVSkJRWGxDTEVkQlFVY3NRMEZCUXl4SFFVRkhMSFZDUVVGMVFpeERRVUZETEVOQlFVTTdVVUZETDBRc1RVRkJUU3hwUWtGQmFVSXNSMEZCUnl4RFFVRkRMRWRCUVVjc1pVRkJaU3hEUVVGRExFTkJRVU03VVVGRkwwTXNTVUZCU1N4RFFVRkRMR2xEUVVGcFF5eERRVUZETzFsQlEzSkRMR2xDUVVGcFFqdFpRVU5xUWl4NVFrRkJlVUk3V1VGRGVrSXNkVUpCUVhWQ08xbEJRM1pDTEZOQlFWTTdXVUZEVkN4WlFVRlpMRVZCUVVVc1dVRkJXVHRaUVVNeFFpeExRVUZMTEVWQlFVVXNXVUZCV1R0WlFVTnVRaXhMUVVGTExFVkJRVVVzYVVKQlFXbENPMWxCUTNoQ0xFZEJRVWM3VTBGRFNpeERRVUZETEVOQlFVTTdTVUZEVEN4RFFVRkRPMGxCUlVRN08wOUJSVWM3U1VGRFN5eHpRa0ZCYzBJN1VVRkROVUlzYTBKQlFXdENPMUZCUTJ4Q0xFMUJRVTBzWVVGQllTeEhRVUZITEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNN1VVRkRja01zVFVGQlRTeGhRVUZoTEVkQlFVY3NTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJRenRSUVVWeVF5eHZSRUZCYjBRN1VVRkRjRVFzVFVGQlRTeEZRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1pVRkJaU3hGUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhEUVVGRE8xRkJSVGRFTEUxQlFVMHNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF6dFJRVU5zUXl4TlFVRk5MRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXp0UlFVVnVReXhOUVVGTkxFVkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUXl4SFFVRkhMRmxCUVZrc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRSUVVWMlJDeEpRVUZKTEVOQlFVTXNhVU5CUVdsRExFTkJRVU03V1VGRGNrTXNZVUZCWVR0WlFVTmlMR0ZCUVdFN1dVRkRZaXhKUVVGSk8xbEJRMG9zU1VGQlNUdFpRVU5LTEdWQlFXVTdXVUZEWml4RFFVRkRPMWxCUTBRc1EwRkJRenRaUVVORUxFOUJRVTg3V1VGRFVDeFRRVUZUTzFOQlExWXNRMEZCUXl4RFFVRkRPMGxCUTB3c1EwRkJRenRKUVVWRU96czdPenM3VDBGTlJ6dEpRVU5MTEd0Q1FVRnJRaXhEUVVGRExFTkJRVk03VVVGRGJFTXNUVUZCVFN4RlFVRkRMR2xDUVVGcFFpeEZRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRPMUZCUTJwRExFMUJRVTBzUlVGRFNpeEpRVUZKTEVWQlEwb3NTVUZCU1N4RlFVTktMR0ZCUVdFc1JVRkRZaXhoUVVGaExFVkJRMklzWlVGQlpTeEZRVU5tTEdsQ1FVRnBRaXhGUVVOcVFpeDVRa0ZCZVVJc1JVRkRla0lzZFVKQlFYVkNMRVZCUTNaQ0xGTkJRVk1zUlVGRFZDeFpRVUZaTEVWQlExb3NTMEZCU3l4RlFVTk1MRXRCUVVzc1JVRkRUQ3hEUVVGRExFVkJRMFFzUTBGQlF5eEZRVU5FTEVkQlFVY3NSVUZEU0N4UFFVRlBMRVZCUTFBc1UwRkJVeXhIUVVOV0xFZEJRVWNzYVVKQlFXbENMRU5CUVVNN1VVRkZkRUlzVFVGQlRTeFRRVUZUTEVkQlFVY3NSMEZCUnl4RFFVRkRPMUZCUlhSQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhsUVVGbExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXk5RExFbEJRVWtzYVVKQlFXbENMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF6dG5Ra0ZETVVJc1UwRkJVenRaUVVkWUxFMUJRVTBzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOc1FpeE5RVUZOTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRmJFSXNUVUZCVFN4UFFVRlBMRWRCUVVjc1lVRkJZU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEycERMRTFCUVUwc1MwRkJTeXhIUVVGSExHRkJRV0VzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVVXZRaXhOUVVGTkxGZEJRVmNzUjBGQlJ5eExRVUZMTEVOQlFVTXNUMEZCVHl4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8xbEJSVEZETEVsQlFVa3NVMEZCVXl4SFFVRkhMRU5CUVVNc1EwRkJRenRaUVVOc1FpeEpRVUZKTEZkQlFWY3NSMEZCUnl4RFFVRkRMRVZCUVVVN1owSkJRMjVDTEZOQlFWTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTXNRMEZCUXp0blFrRkRNVVFzVTBGQlV5eEpRVUZKTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNN1lVRkRha1E3V1VGRlJDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUjBGQlJ5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMmRDUVVNMVFpeE5RVUZOTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1UwRkJVeXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEZOQlFWTXNRMEZCUXl4RFFVRkRPMmRDUVVOdVJTeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1MwRkJTeXhIUVVGSExFdEJRVXNzUTBGQlF6dG5Ra0ZETlVJc1NVRkJTU3hUUVVGVE8yOUNRVU5ZTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eExRVUZMTEVOQlFVTTdZVUZET1VJN1dVRkZSQ3hwUWtGQmFVSXNRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hsUVVGbExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZGTTBNc1RVRkJUU3hYUVVGWExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZETlVJc1EwRkJReXhEUVVGRExFZEJRVWNzZVVKQlFYbENMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eDFRa0ZCZFVJc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGRGFFVXNRMEZCUXp0WlFVVkdMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4WFFVRlhMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3WjBKQlEzQkRMRTFCUVUwc1EwRkJReXhIUVVGSExFdEJRVXNzUTBGQlF5eFZRVUZWTEVOQlFVTXNVMEZCVXl4RlFVRkZMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dG5Ra0ZEYmtRc1RVRkJUU3hMUVVGTExFZEJRVWNzWVVGQllTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVVdlFpeE5RVUZOTEZkQlFWY3NSMEZCUnl4TFFVRkxMRU5CUVVNc1QwRkJUeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzJkQ1FVVXhReXhKUVVGSkxGTkJRVk1zUjBGQlJ5eEhRVUZITEVOQlFVTTdaMEpCUTNCQ0xFbEJRVWtzVjBGQlZ5eEhRVUZITEVkQlFVY3NSVUZCUlR0dlFrRkRja0lzVTBGQlV5eEhRVUZITEVkQlFVY3NSMEZCUnl4TFFVRkxMRWRCUVVjc1EwRkJReXhEUVVGRE8yOUNRVU0xUWl4VFFVRlRPM2RDUVVOUUxFTkJRVU1zUzBGQlN5eEhRVUZITEZkQlFWY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzJsQ1FVTTVSRHR4UWtGQlRTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRVZCUVVVN2IwSkJRMnhDTEZOQlFWTTdhVUpCUTFZN1owSkJSVVFzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFZEJRVWNzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0dlFrRkROVUlzU1VGQlNTeExRVUZMTEVkQlFVY3NSMEZCUnl4RFFVRkRPMjlDUVVOb1FpeEpRVUZKTEZOQlFWTXNSMEZCUnl4SFFVRkhPM2RDUVVOcVFpeExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRMRk5CUVZNc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeFRRVUZUTEVOQlFVTXNRMEZCUXp0dlFrRkZMMFFzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRXRCUVVzc1IwRkJSeXhMUVVGTExFTkJRVU03YVVKQlF6ZENPMkZCUTBZN1dVRkRSQ3g1UWtGQmVVSXNRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hYUVVGWExFZEJRVWNzZFVKQlFYVkNMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VTBGRE1VVTdVVUZEUkN4cFFrRkJhVUlzUTBGQlF5eExRVUZMTEVkQlFVY3NXVUZCV1N4SFFVRkhMRU5CUVVNc1IwRkJSeXhIUVVGSExFTkJRVU1zUjBGQlJ5eFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVVTNSQ3hwUWtGQmFVSXNRMEZCUXl4WlFVRlpMRWxCUVVrc1EwRkJReXhEUVVGRE8xRkJRM0JETEU5QlFVOHNZVUZCWVN4RFFVRkRPMGxCUTNaQ0xFTkJRVU03U1VGRlJEczdPenM3TzA5QlRVYzdTVUZEU3l4dFFrRkJiVUlzUTBGRGVrSXNaMEpCUVhsRUxFZEJRVWNzUlVGQlJTeERRVUZETEVsQlFVazdVVUZGYmtVc1QwRkJUeXhKUVVGSkxFOUJRVThzUTBGQlF5eERRVUZETEU5QlFVOHNSVUZCUlN4TlFVRk5MRVZCUVVVc1JVRkJSVHRaUVVOeVF5eE5RVUZOTEVsQlFVa3NSMEZCUnl4TFFVRkxMRWxCUVVrc1JVRkJSVHRuUWtGRGRFSXNTVUZCU1R0dlFrRkRSaXhOUVVGTkxFVkJRVU1zVDBGQlR5eEZRVUZGTEZsQlFWa3NSVUZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhwUWtGQmFVSXNRMEZCUXp0dlFrRkRka1FzU1VGQlNTeERRVUZETEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNN2IwSkJRM1pFTEUxQlFVMHNZMEZCWXl4SFFVRkhMRWxCUVVrc1EwRkJReXhwUWtGQmFVSXNRMEZCUXl4WlFVRlpMRU5CUVVNN2IwSkJRek5FTEUxQlFVMHNWVUZCVlN4SFFVRkhMR0ZCUVdFc1EwRkJReXhqUVVGakxFTkJRVU1zUzBGQlN5eExRVUZMTEVOQlFVTTdiMEpCUXpORUxFMUJRVTBzVlVGQlZTeEhRVUZITEdOQlFXTXNTMEZCU3l4UFFVRlBMRU5CUVVNN2IwSkJRemxETEVsQlFVa3NRMEZCUXl4VlFVRlZMRWxCUVVrc1EwRkJReXhWUVVGVk8zZENRVU0xUWl4VlFVRlZMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zU1VGQlNTeEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN08zZENRVVUxUWl4UFFVRlBMRTlCUVU4c1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF6dHBRa0ZET1VJN1owSkJRVU1zVDBGQlR5eEhRVUZITEVWQlFVVTdiMEpCUTFvc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzJsQ1FVTmlPMWxCUTBnc1EwRkJReXhEUVVGRE8xbEJRMFlzVlVGQlZTeERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRMRWxCUVVrc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlF6bENMRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRMHdzUTBGQlF6dEpRVVZFT3pzN096czdUMEZOUnp0SlFVTkxMR05CUVdNc1EwRkRjRUlzWjBKQlFYbEVMRWRCUVVjc1JVRkJSU3hEUVVGRExFbEJRVWs3VVVGRmJrVXNTVUZCU1N4VlFVRlZMRWRCUVVjc1MwRkJTeXhEUVVGRE8xRkJRM1pDTEVsQlFVa3NVMEZCVXl4SFFVRlpMRVZCUVVVc1EwRkJRenRSUVVNMVFpeFBRVUZQTEVOQlFVTXNWVUZCVlN4RlFVRkZPMWxCUTJ4Q0xFMUJRVTBzUlVGQlF5eFBRVUZQTEVWQlFVVXNXVUZCV1N4RlFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExHbENRVUZwUWl4RFFVRkRPMWxCUTNaRUxGTkJRVk1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zV1VGQldTeERRVUZETEVOQlFVTTdXVUZEYkVRc1RVRkJUU3hqUVVGakxFZEJRVWNzU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhEUVVGRExGbEJRVmtzUTBGQlF6dFpRVU16UkN4TlFVRk5MRlZCUVZVc1IwRkJSeXhoUVVGaExFTkJRVU1zWTBGQll5eERRVUZETEV0QlFVc3NTMEZCU3l4RFFVRkRPMWxCUXpORUxGVkJRVlVzUjBGQlJ5eGpRVUZqTEV0QlFVc3NUMEZCVHl4SlFVRkpMRlZCUVZVc1EwRkJRenRUUVVOMlJEdFJRVU5FTEU5QlFVOHNVMEZCVXl4RFFVRkRPMGxCUTI1Q0xFTkJRVU03U1VGRlJEczdPMDlCUjBjN1NVRkRTU3hWUVVGVk8xRkJRMllzVFVGQlRTeExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVWNlFpeEpRVUZKTEVsQlFVa3NRMEZCUXl4UFFVRlBMRWRCUVVjc1EwRkJRenRaUVVOc1FpeFBRVUZQTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNN1VVRkhkRUlzU1VGQlNTeERRVUZETEV0QlFVczdXVUZEVWl4UFFVRlBMRWRCUVVjc1EwRkJRenRSUVVkaUxFMUJRVTBzVFVGQlRTeEhRVUZITEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNN1VVRkRNMElzU1VGQlNTeE5RVUZOTEVsQlFVa3NTVUZCU1R0WlFVTm9RaXhQUVVGUExFZEJRVWNzUTBGQlF6dGhRVU5TTEVsQlFVa3NUVUZCVFN4SlFVRkpMRWxCUVVrN1dVRkRja0lzVDBGQlR5eEhRVUZITEVOQlFVTTdZVUZEVWl4SlFVRkpMRTFCUVUwc1NVRkJTU3hKUVVGSk8xbEJRM0pDTEU5QlFVOHNSMEZCUnl4RFFVRkRPenRaUVVWWUxFOUJRVThzUjBGQlJ5eERRVUZETzBsQlEyWXNRMEZCUXp0RFFVTkdPMEZCUlVRc1RVRkJUU3hWUVVGVkxGTkJRVk1zUTBGQlF5eERRVUZUTEVWQlFVVXNRMEZCVXp0SlFVTTFReXhKUVVGSkxFMUJRVTBzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZEWml4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVU3VVVGREwwSXNUVUZCVFN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVVV2UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdRVUZETTBJc1EwRkJRenRCUVVWRUxFMUJRVTBzVlVGQlZTeFBRVUZQTEVOQlFVTXNRMEZCVXl4RlFVRkZMRU5CUVZNN1NVRkRNVU1zVFVGQlRTeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdTVUZETDBJc1QwRkJUeXhOUVVGTkxFTkJRVU03UVVGRGFFSXNRMEZCUXp0QlFVVkVMRTFCUVUwc1ZVRkJWU3hOUVVGTkxFTkJRVU1zUTBGQlV5eEZRVUZGTEVOQlFWTTdTVUZEZWtNc1NVRkJTU3hOUVVGTkxFZEJRVWNzUjBGQlJ5eERRVUZETzBsQlEycENMRWxCUVVrc1MwRkJTeXhIUVVGSExFZEJRVWNzUTBGQlF6dEpRVU5vUWl4SlFVRkpMRXRCUVVzc1IwRkJSeXhIUVVGSExFTkJRVU03U1VGRmFFSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3VVVGRGFrTXNUVUZCVFN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRkRUlzUzBGQlN5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03VVVGRGJrSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdTMEZEY0VJN1NVRkZSQ3hKUVVGSkxFdEJRVXNzUzBGQlN5eERRVUZETEVsQlFVa3NTMEZCU3l4TFFVRkxMRU5CUVVNN1VVRkROVUlzVDBGQlR5eERRVUZETEVOQlFVTTdVMEZEVGl4SlFVRkpMRXRCUVVzc1MwRkJTeXhEUVVGRExFbEJRVWtzUzBGQlN5eExRVUZMTEVOQlFVTTdVVUZEYWtNc1QwRkJUeXhIUVVGSExFTkJRVU03TzFGQlJWZ3NUMEZCVHl4SFFVRkhMRWRCUVVjc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4SFFVRkhMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRMjVFTEVOQlFVTTdRVUZGUkRzN08wZEJSMGM3UVVGRFNDeE5RVUZOTEdsQ1FVRnBRanRKUVVOeVFpeFpRVUZaTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUldwQ0xEQkRRVUV3UXp0SlFVTXhReXhoUVVGaExFZEJRV1VzUlVGQlJTeERRVUZETzBsQlF5OUNMR0ZCUVdFc1IwRkJaU3hGUVVGRkxFTkJRVU03U1VGREwwSXNTVUZCU1N4SFFVRmhMRVZCUVVVc1EwRkJRenRKUVVOd1FpeEpRVUZKTEVkQlFXRXNSVUZCUlN4RFFVRkRPMGxCUTNCQ0xHVkJRV1VzUjBGQllTeEZRVUZGTEVOQlFVTTdTVUZETDBJc2FVSkJRV2xDTEVkQlFXRXNSVUZCUlN4RFFVRkRPMGxCUTJwRExIbENRVUY1UWl4SFFVRmhMRVZCUVVVc1EwRkJRenRKUVVONlF5eDFRa0ZCZFVJc1IwRkJZU3hGUVVGRkxFTkJRVU03U1VGRGRrTXNVMEZCVXl4SFFVRkhMRWxCUVVrc1EwRkJRenRKUVVOcVFpeFpRVUZaTEVkQlFVY3NSMEZCUnl4RFFVRkRPMGxCUTI1Q0xFdEJRVXNzUjBGQlJ5eEhRVUZITEVOQlFVTTdTVUZEV2l4TFFVRkxMRWRCUVVjc1IwRkJSeXhEUVVGRE8wbEJRMW9zUTBGQlF5eEhRVUZITEd0Q1FVRnJRaXhEUVVGRE8wbEJRM1pDTEVOQlFVTXNSMEZCUnl4clFrRkJhMElzUTBGQlF6dEpRVU4yUWl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRE8wbEJRMUlzVDBGQlR5eEhRVUZITEVkQlFVY3NRMEZCUXp0SlFVTmtMRk5CUVZNc1IwRkJSeXhEUVVGRExFTkJRVU03UTBGRFpqdEJRVVZFT3p0SFFVVkhPMEZCUTBnc1UwRkJVeXhKUVVGSkxFTkJRVU1zUTBGQlV5eEZRVUZGTEZOQlFXbENPMGxCUTNoRExFbEJRVWtzUTBGQlF5eEhRVUZITEZOQlFWTTdVVUZCUlN4UFFVRlBMRk5CUVZNc1EwRkJRenRUUVVNdlFpeEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRk5CUVZNN1VVRkJSU3hQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZET3p0UlFVTjBReXhQUVVGUExFTkJRVU1zUTBGQlF6dEJRVU5vUWl4RFFVRkRPMEZCUlVRN08wZEJSVWM3UVVGRFNDeFRRVUZUTEV0QlFVc3NRMEZCUXl4RFFVRlhMRVZCUVVVc1EwRkJWenRKUVVOeVF5eEpRVUZKTEUxQlFVMHNSMEZCUnl4SFFVRkhMRU5CUVVNN1NVRkRha0lzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZPMUZCUXk5Q0xFMUJRVTBzU1VGQlNTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRmNrTXNUMEZCVHl4TlFVRk5MRU5CUVVNN1FVRkRhRUlzUTBGQlF6dEJRVVZFT3pzN096dEhRVXRITzBGQlEwZ3NUVUZCVFN4VlFVRlZMRmxCUVZrc1EwRkJReXhOUVVGakxFVkJRVVVzVDBGQlpUdEpRVU14UkN4TlFVRk5MRXRCUVVzc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCVnl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVk1zUlVGQlJTeEZRVUZGTzFGQlEyaEVMRTlCUVU4c1IwRkJSeXhIUVVGSExFTkJRVU1zUjBGQlJ5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjRReXhEUVVGRExFTkJRVU03U1VGRlJpeE5RVUZOTEVWQlFVVXNSMEZCUnl4TFFVRkxPMU5CUTJJc1RVRkJUU3hEUVVGRExFTkJRVU1zUlVGQlJTeE5RVUZOTEVkQlFVY3NRMEZCUXl4RlFVRkZMRWRCUVVjc1EwRkJRenRUUVVNeFFpeEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUjBGQlJ5eEhRVUZITEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUlRkRExFMUJRVTBzUlVGQlJTeEhRVUZITEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1JVRkJSU3hMUVVGTExFVkJRVVVzUlVGQlJUdFJRVU51UkN4TlFVRk5MRWRCUVVjc1IwRkJSeXhGUVVGRkxFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NUMEZCVHl4RFFVRkRPMUZCUTJwRExFOUJRVThzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWRCUVVjc1QwRkJUeXhEUVVGRExFZEJRVWNzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJRenRKUVVNdlJDeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVVklMRTFCUVUwc1lVRkJZU3hIUVVGSExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTJwRExFMUJRVTBzU1VGQlNTeEhRVUZITEVWQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJTeEZRVUZETEVOQlFVTTdTVUZGTlVJc01FUkJRVEJFTzBsQlF6RkVMRTFCUVUwc1QwRkJUeXhIUVVGSE8xRkJRMlFzVDBGQlR5eEZRVUZGTEVkQlFVYzdVVUZEV2l4aFFVRmhPMUZCUTJJc2EwSkJRV3RDTEVWQlFVVXNTMEZCU3p0UlFVTjZRaXhoUVVGaExFVkJRVVVzUjBGQlJ6dFJRVU5zUWl4alFVRmpMRVZCUVVVc1MwRkJTenRMUVVOMFFpeERRVUZETzBsQlJVWXNiVU5CUVcxRE8wbEJRMjVETEUxQlFVMHNSVUZCUXl4bFFVRmxMRVZCUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zU1VGQlNTeEZRVUZGTEV0QlFVc3NSVUZCUlN4UFFVRlBMRU5CUVVNc1EwRkJRenRKUVVOdVJDeE5RVUZOTEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhIUVVGSExHVkJRVEpDTEVOQlFVTTdTVUZETTBNc1QwRkJUeXhGUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVTXNRMEZCUXp0QlFVTm9RaXhEUVVGRE8wRkJSVVE3T3p0SFFVZEhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHZENRVUZuUWl4RFFVTTVRaXhMUVVFd1FpeEZRVU14UWl4TlFVRm5RaXhGUVVOb1FpeFhRVUZYTEVkQlFVY3NSMEZCUnl4RlFVTnFRaXhQUVVGUExFZEJRVWNzUjBGQlJ6dEpRVVZpTEU5QlFVOHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFdEJRVXNzUlVGQlJTeEhRVUZITEVWQlFVVXNSMEZCUnl4RlFVRkZMRVZCUVVVN1VVRkRia01zU1VGQlNTeE5RVUZOTEVOQlFVTXNSMEZCUnl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFbEJRVWtzVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRaUVVNeFF5eFBRVUZQTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zVjBGQlZ5eERRVUZETEVOQlFVTTdZVUZEYmtNc1NVRkJTU3hOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEV0QlFVc3NUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJRenRaUVVOc1F5eFBRVUZQTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdPMWxCUld4RExFOUJRVThzUzBGQlN5eERRVUZETzBsQlEycENMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRMHdzUTBGQlF6dEJRVVZFT3pzN096dEhRVXRITzBGQlEwZ3NUVUZCVFN4VlFVRlZMSE5DUVVGelFpeERRVUZETEdGQlFXdERPMGxCUTNaRkxHRkJRV0VzUjBGQlJ5eE5RVUZOTEVOQlFVTXNVMEZCVXl4RFFVRkRMR0ZCUVdFc2EwTkJRWE5DTEVOQlFVTTdTVUZEY2tVc1RVRkJUU3hUUVVGVExFZEJRVWNzVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4aFFVRmhMRU5CUVVNc1EwRkJRenRKUVVOc1JDeE5RVUZOTEZWQlFWVXNSMEZCUnl4TlFVRk5MRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNVMEZCVXl4RlFVRkZMR0ZCUVdFc1EwRkJReXhEUVVGRE8wbEJRM0pGTEdGQlFXRXNSMEZCUnl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVONFFpeGhRVUZoTEVWQlEySXNUVUZCVFN4RFFVRkRMRkZCUVZFc1EwRkJReXhUUVVGVExFVkJRVVVzVlVGQlZTeERRVUZETEVOQlEzWkRMRU5CUVVNN1NVRkRSaXhQUVVGUExFMUJRVTBzUTBGQlF5eGpRVUZqTEVOQlFVTXNZVUZCWVN4RFFVRkRMRU5CUVVNN1FVRkRPVU1zUTBGQlF6dEJRVVZFT3pzN08wZEJTVWM3UVVGRFNDeE5RVUZOTEZWQlFWVXNZVUZCWVN4RFFVTXpRaXhQUVVGdFFpeEZRVU51UWl4UFFVRnRRaXhGUVVOdVFpeFRRVUZyUWp0SlFVVnNRaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eExRVUZMTzFOQlEycENMRXRCUVVzc1EwRkJReXhQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETzFOQlEzSkNMRWRCUVVjc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVWcVJDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRSUVVOMlF5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU14UXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkROVU1zVFVGQlRTeERRVUZETEVkQlFVY3NUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTjRRaXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRk5CUVZNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0aFFVTnFSRHRUUVVOR08wdEJRMFk3U1VGRFJDeFBRVUZQTEUxQlFVMHNRMEZCUXp0QlFVTm9RaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lMeW9nWlhOc2FXNTBMV1JwYzJGaWJHVWdiV0Y0TFd4bGJpQXFMMXh1THlvcVhHNGdLaUJBYkdsalpXNXpaVnh1SUNwY2JpQXFJRU52Y0hseWFXZG9kQ0F5TURFNUlFZHZiMmRzWlNCTVRFTXVJRUZzYkNCU2FXZG9kSE1nVW1WelpYSjJaV1F1WEc0Z0tseHVJQ29nVEdsalpXNXpaV1FnZFc1a1pYSWdkR2hsSUVGd1lXTm9aU0JNYVdObGJuTmxMQ0JXWlhKemFXOXVJREl1TUNBb2RHaGxJRndpVEdsalpXNXpaVndpS1R0Y2JpQXFJSGx2ZFNCdFlYa2dibTkwSUhWelpTQjBhR2x6SUdacGJHVWdaWGhqWlhCMElHbHVJR052YlhCc2FXRnVZMlVnZDJsMGFDQjBhR1VnVEdsalpXNXpaUzVjYmlBcUlGbHZkU0J0WVhrZ2IySjBZV2x1SUdFZ1kyOXdlU0J2WmlCMGFHVWdUR2xqWlc1elpTQmhkRnh1SUNwY2JpQXFJQ0FnSUNCb2RIUndPaTh2ZDNkM0xtRndZV05vWlM1dmNtY3ZiR2xqWlc1elpYTXZURWxEUlU1VFJTMHlMakJjYmlBcVhHNGdLaUJWYm14bGMzTWdjbVZ4ZFdseVpXUWdZbmtnWVhCd2JHbGpZV0pzWlNCc1lYY2diM0lnWVdkeVpXVmtJSFJ2SUdsdUlIZHlhWFJwYm1jc0lITnZablIzWVhKbFhHNGdLaUJrYVhOMGNtbGlkWFJsWkNCMWJtUmxjaUIwYUdVZ1RHbGpaVzV6WlNCcGN5QmthWE4wY21saWRYUmxaQ0J2YmlCaGJpQmNJa0ZUSUVsVFhDSWdRa0ZUU1ZNc1hHNGdLaUJYU1ZSSVQxVlVJRmRCVWxKQlRsUkpSVk1nVDFJZ1EwOU9SRWxVU1U5T1V5QlBSaUJCVGxrZ1MwbE9SQ3dnWldsMGFHVnlJR1Y0Y0hKbGMzTWdiM0lnYVcxd2JHbGxaQzVjYmlBcUlGTmxaU0IwYUdVZ1RHbGpaVzV6WlNCbWIzSWdkR2hsSUhOd1pXTnBabWxqSUd4aGJtZDFZV2RsSUdkdmRtVnlibWx1WnlCd1pYSnRhWE56YVc5dWN5QmhibVJjYmlBcUlHeHBiV2wwWVhScGIyNXpJSFZ1WkdWeUlIUm9aU0JNYVdObGJuTmxMbHh1SUNvZ1BUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5WEc0Z0tpOWNibHh1THlvcVhHNGdLaUJVYUdseklHbHpJR0VnU21GMllWTmpjbWx3ZENCeVpXbHRjR3hsYldWdWRHRjBhVzl1SUc5bUlGVk5RVkFnS0c5eWFXZHBibUZzSUd4cFkyVnVjMlVnWW1Wc2IzY3BMQ0JtY205dFhHNGdLaUIwYUdVZ2NIbDBhRzl1SUdsdGNHeGxiV1Z1ZEdGMGFXOXVJR1p2ZFc1a0lHRjBJR2gwZEhCek9pOHZaMmwwYUhWaUxtTnZiUzlzYldOcGJtNWxjeTkxYldGd0xseHVJQ3BjYmlBcUlFQmhkWFJvYjNJZ1lXNWtlV052Wlc1bGJrQm5iMjluYkdVdVkyOXRJQ2hCYm1SNUlFTnZaVzVsYmlsY2JpQXFMMXh1WEc0dktpcGNiaUFxSUVCc2FXTmxibk5sWEc0Z0tpQkNVMFFnTXkxRGJHRjFjMlVnVEdsalpXNXpaVnh1SUNwY2JpQXFJRU52Y0hseWFXZG9kQ0FvWXlrZ01qQXhOeXdnVEdWc1lXNWtJRTFqU1c1dVpYTmNiaUFxSUVGc2JDQnlhV2RvZEhNZ2NtVnpaWEoyWldRdVhHNGdLbHh1SUNvZ1VtVmthWE4wY21saWRYUnBiMjRnWVc1a0lIVnpaU0JwYmlCemIzVnlZMlVnWVc1a0lHSnBibUZ5ZVNCbWIzSnRjeXdnZDJsMGFDQnZjaUIzYVhSb2IzVjBYRzRnS2lCdGIyUnBabWxqWVhScGIyNHNJR0Z5WlNCd1pYSnRhWFIwWldRZ2NISnZkbWxrWldRZ2RHaGhkQ0IwYUdVZ1ptOXNiRzkzYVc1bklHTnZibVJwZEdsdmJuTWdZWEpsSUcxbGREcGNiaUFxWEc0Z0tpQXFJRkpsWkdsemRISnBZblYwYVc5dWN5QnZaaUJ6YjNWeVkyVWdZMjlrWlNCdGRYTjBJSEpsZEdGcGJpQjBhR1VnWVdKdmRtVWdZMjl3ZVhKcFoyaDBJRzV2ZEdsalpTd2dkR2hwYzF4dUlDb2dJQ0JzYVhOMElHOW1JR052Ym1ScGRHbHZibk1nWVc1a0lIUm9aU0JtYjJ4c2IzZHBibWNnWkdselkyeGhhVzFsY2k1Y2JpQXFYRzRnS2lBcUlGSmxaR2x6ZEhKcFluVjBhVzl1Y3lCcGJpQmlhVzVoY25rZ1ptOXliU0J0ZFhOMElISmxjSEp2WkhWalpTQjBhR1VnWVdKdmRtVWdZMjl3ZVhKcFoyaDBJRzV2ZEdsalpTeGNiaUFxSUNBZ2RHaHBjeUJzYVhOMElHOW1JR052Ym1ScGRHbHZibk1nWVc1a0lIUm9aU0JtYjJ4c2IzZHBibWNnWkdselkyeGhhVzFsY2lCcGJpQjBhR1VnWkc5amRXMWxiblJoZEdsdmJseHVJQ29nSUNCaGJtUXZiM0lnYjNSb1pYSWdiV0YwWlhKcFlXeHpJSEJ5YjNacFpHVmtJSGRwZEdnZ2RHaGxJR1JwYzNSeWFXSjFkR2x2Ymk1Y2JpQXFYRzRnS2lBcUlFNWxhWFJvWlhJZ2RHaGxJRzVoYldVZ2IyWWdkR2hsSUdOdmNIbHlhV2RvZENCb2IyeGtaWElnYm05eUlIUm9aU0J1WVcxbGN5QnZaaUJwZEhOY2JpQXFJQ0FnWTI5dWRISnBZblYwYjNKeklHMWhlU0JpWlNCMWMyVmtJSFJ2SUdWdVpHOXljMlVnYjNJZ2NISnZiVzkwWlNCd2NtOWtkV04wY3lCa1pYSnBkbVZrSUdaeWIyMWNiaUFxSUNBZ2RHaHBjeUJ6YjJaMGQyRnlaU0IzYVhSb2IzVjBJSE53WldOcFptbGpJSEJ5YVc5eUlIZHlhWFIwWlc0Z2NHVnliV2x6YzJsdmJpNWNiaUFxWEc0Z0tpQlVTRWxUSUZOUFJsUlhRVkpGSUVsVElGQlNUMVpKUkVWRUlFSlpJRlJJUlNCRFQxQlpVa2xIU0ZRZ1NFOU1SRVZTVXlCQlRrUWdRMDlPVkZKSlFsVlVUMUpUSUZ3aVFWTWdTVk5jSWx4dUlDb2dRVTVFSUVGT1dTQkZXRkJTUlZOVElFOVNJRWxOVUV4SlJVUWdWMEZTVWtGT1ZFbEZVeXdnU1U1RFRGVkVTVTVITENCQ1ZWUWdUazlVSUV4SlRVbFVSVVFnVkU4c0lGUklSVnh1SUNvZ1NVMVFURWxGUkNCWFFWSlNRVTVVU1VWVElFOUdJRTFGVWtOSVFVNVVRVUpKVEVsVVdTQkJUa1FnUmtsVVRrVlRVeUJHVDFJZ1FTQlFRVkpVU1VOVlRFRlNJRkJWVWxCUFUwVWdRVkpGWEc0Z0tpQkVTVk5EVEVGSlRVVkVMaUJKVGlCT1R5QkZWa1ZPVkNCVFNFRk1UQ0JVU0VVZ1EwOVFXVkpKUjBoVUlFaFBURVJGVWlCUFVpQkRUMDVVVWtsQ1ZWUlBVbE1nUWtVZ1RFbEJRa3hGWEc0Z0tpQkdUMUlnUVU1WklFUkpVa1ZEVkN3Z1NVNUVTVkpGUTFRc0lFbE9RMGxFUlU1VVFVd3NJRk5RUlVOSlFVd3NJRVZZUlUxUVRFRlNXU3dnVDFJZ1EwOU9VMFZSVlVWT1ZFbEJURnh1SUNvZ1JFRk5RVWRGVXlBb1NVNURURlZFU1U1SExDQkNWVlFnVGs5VUlFeEpUVWxVUlVRZ1ZFOHNJRkJTVDBOVlVrVk5SVTVVSUU5R0lGTlZRbE5VU1ZSVlZFVWdSMDlQUkZNZ1QxSmNiaUFxSUZORlVsWkpRMFZUT3lCTVQxTlRJRTlHSUZWVFJTd2dSRUZVUVN3Z1QxSWdVRkpQUmtsVVV6c2dUMUlnUWxWVFNVNUZVMU1nU1U1VVJWSlNWVkJVU1U5T0tTQklUMWRGVmtWU1hHNGdLaUJEUVZWVFJVUWdRVTVFSUU5T0lFRk9XU0JVU0VWUFVsa2dUMFlnVEVsQlFrbE1TVlJaTENCWFNFVlVTRVZTSUVsT0lFTlBUbFJTUVVOVUxDQlRWRkpKUTFRZ1RFbEJRa2xNU1ZSWkxGeHVJQ29nVDFJZ1ZFOVNWQ0FvU1U1RFRGVkVTVTVISUU1RlIweEpSMFZPUTBVZ1QxSWdUMVJJUlZKWFNWTkZLU0JCVWtsVFNVNUhJRWxPSUVGT1dTQlhRVmtnVDFWVUlFOUdJRlJJUlNCVlUwVmNiaUFxSUU5R0lGUklTVk1nVTA5R1ZGZEJVa1VzSUVWV1JVNGdTVVlnUVVSV1NWTkZSQ0JQUmlCVVNFVWdVRTlUVTBsQ1NVeEpWRmtnVDBZZ1UxVkRTQ0JFUVUxQlIwVXVYRzRnS2k5Y2JseHVhVzF3YjNKMElDb2dZWE1nYUdWaGNDQm1jbTl0SUNjdUwyaGxZWEFuTzF4dWFXMXdiM0owSUNvZ1lYTWdiV0YwY21sNElHWnliMjBnSnk0dmJXRjBjbWw0Snp0Y2JtbHRjRzl5ZENBcUlHRnpJRzV1UkdWelkyVnVkQ0JtY205dElDY3VMMjV1WDJSbGMyTmxiblFuTzF4dWFXMXdiM0owSUNvZ1lYTWdkSEpsWlNCbWNtOXRJQ2N1TDNSeVpXVW5PMXh1YVcxd2IzSjBJQ29nWVhNZ2RYUnBiSE1nWm5KdmJTQW5MaTkxZEdsc2N5YzdYRzVwYlhCdmNuUWdURTBnWm5KdmJTQW5iV3d0YkdWMlpXNWlaWEpuTFcxaGNuRjFZWEprZENjN1hHNWNibVY0Y0c5eWRDQjBlWEJsSUVScGMzUmhibU5sUm00Z1BTQW9lRG9nYm5WdFltVnlMQ0I1T2lCdWRXMWlaWElwSUQwK0lHNTFiV0psY2p0Y2JtVjRjRzl5ZENCMGVYQmxJRkpoYm1SdmJVWnVJRDBnS0NrZ1BUNGdiblZ0WW1WeU8xeHVaWGh3YjNKMElIUjVjR1VnUlhCdlkyaERZV3hzWW1GamF5QTlJQ2hsY0c5amFEb2diblZ0WW1WeUtTQTlQaUJpYjI5c1pXRnVJSHdnZG05cFpEdGNibVY0Y0c5eWRDQjBlWEJsSUZabFkzUnZjaUE5SUc1MWJXSmxjbHRkTzF4dVpYaHdiM0owSUhSNWNHVWdWbVZqZEc5eWN5QTlJRlpsWTNSdmNsdGRPMXh1Wlhod2IzSjBJR052Ym5OMElHVnVkVzBnVkdGeVoyVjBUV1YwY21saklIdGNiaUFnWTJGMFpXZHZjbWxqWVd3Z1BTQW5ZMkYwWldkdmNtbGpZV3duTEZ4dUlDQnNNU0E5SUNkc01TY3NYRzRnSUd3eUlEMGdKMnd5Snl4Y2JuMWNibHh1WTI5dWMzUWdVMDFQVDFSSVgwdGZWRTlNUlZKQlRrTkZJRDBnTVdVdE5UdGNibU52Ym5OMElFMUpUbDlMWDBSSlUxUmZVME5CVEVVZ1BTQXhaUzB6TzF4dVhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElGVk5RVkJRWVhKaGJXVjBaWEp6SUh0Y2JpQWdMeW9xWEc0Z0lDQXFJRlJvWlNCa2FYTjBZVzVqWlNCbWRXNWpkR2x2YmlCM2FYUm9JSGRvYVdOb0lIUnZJR0Z6YzJWemN5QnVaV0Z5WlhOMElHNWxhV2RvWW05eWN5d2daR1ZtWVhWc2RITmNiaUFnSUNvZ2RHOGdaWFZqYkdsa1pXRnVJR1JwYzNSaGJtTmxMbHh1SUNBZ0tpOWNiaUFnWkdsemRHRnVZMlZHYmo4NklFUnBjM1JoYm1ObFJtNDdYRzRnSUM4cUtseHVJQ0FnS2lCVWFHVWdhVzVwZEdsaGJDQnNaV0Z5Ym1sdVp5QnlZWFJsSUdadmNpQjBhR1VnWlcxaVpXUmthVzVuSUc5d2RHbHRhWHBoZEdsdmJpNWNiaUFnSUNvdlhHNGdJR3hsWVhKdWFXNW5VbUYwWlQ4NklHNTFiV0psY2p0Y2JpQWdMeW9xWEc0Z0lDQXFJRlJvWlNCc2IyTmhiQ0JqYjI1dVpXTjBhWFpwZEhrZ2NtVnhkV2x5WldRZ0xTMGdhUzVsTGlCMGFHVWdiblZ0WW1WeUlHOW1JRzVsWVhKbGMzUmNiaUFnSUNvZ2JtVnBaMmhpYjNKeklIUm9ZWFFnYzJodmRXeGtJR0psSUdGemMzVnRaV1FnZEc4Z1ltVWdZMjl1Ym1WamRHVmtJR0YwSUdFZ2JHOWpZV3dnYkdWMlpXd3VYRzRnSUNBcUlGUm9aU0JvYVdkb1pYSWdkR2hwY3lCMllXeDFaU0IwYUdVZ2JXOXlaU0JqYjI1dVpXTjBaV1FnZEdobElHMWhibWxtYjJ4a0lHSmxZMjl0WlhOY2JpQWdJQ29nYkc5allXeHNlUzRnU1c0Z2NISmhZM1JwWTJVZ2RHaHBjeUJ6YUc5MWJHUWdZbVVnYm05MElHMXZjbVVnZEdoaGJpQjBhR1VnYkc5allXd2dhVzUwY21sdWMybGpYRzRnSUNBcUlHUnBiV1Z1YzJsdmJpQnZaaUIwYUdVZ2JXRnVhV1p2YkdRdVhHNGdJQ0FxTDF4dUlDQnNiMk5oYkVOdmJtNWxZM1JwZG1sMGVUODZJRzUxYldKbGNqdGNiaUFnTHlvcVhHNGdJQ0FxSUZSb1pTQmxabVpsWTNScGRtVWdiV2x1YVcxMWJTQmthWE4wWVc1alpTQmlaWFIzWldWdUlHVnRZbVZrWkdWa0lIQnZhVzUwY3k0Z1UyMWhiR3hsY2lCMllXeDFaWE5jYmlBZ0lDb2dkMmxzYkNCeVpYTjFiSFFnYVc0Z1lTQnRiM0psSUdOc2RYTjBaWEpsWkM5amJIVnRjR1ZrSUdWdFltVmtaR2x1WnlCM2FHVnlaU0J1WldGeVlua2djRzlwYm5SelhHNGdJQ0FxSUc5dUlIUm9aU0J0WVc1cFptOXNaQ0JoY21VZ1pISmhkMjRnWTJ4dmMyVnlJSFJ2WjJWMGFHVnlMQ0IzYUdsc1pTQnNZWEpuWlhJZ2RtRnNkV1Z6SUhkcGJHeGNiaUFnSUNvZ2NtVnpkV3gwSUc5dUlHRWdiVzl5WlNCbGRtVnVJR1JwYzNCbGNuTmhiQ0J2WmlCd2IybHVkSE11SUZSb1pTQjJZV3gxWlNCemFHOTFiR1FnWW1VZ2MyVjBYRzRnSUNBcUlISmxiR0YwYVhabElIUnZJSFJvWlNCZ1lITndjbVZoWkdCZ0lIWmhiSFZsTENCM2FHbGphQ0JrWlhSbGNtMXBibVZ6SUhSb1pTQnpZMkZzWlNCaGRDQjNhR2xqYUZ4dUlDQWdLaUJsYldKbFpHUmxaQ0J3YjJsdWRITWdkMmxzYkNCaVpTQnpjSEpsWVdRZ2IzVjBMbHh1SUNBZ0tpOWNiaUFnYldsdVJHbHpkRDg2SUc1MWJXSmxjanRjYmlBZ0x5b3FYRzRnSUNBcUlGUm9aU0JrYVcxbGJuTnBiMjRnYjJZZ2RHaGxJSE53WVdObElIUnZJR1Z0WW1Wa0lHbHVkRzh1SUZSb2FYTWdaR1ZtWVhWc2RITWdkRzhnTWlCMGIxeHVJQ0FnS2lCd2NtOTJhV1JsSUdWaGMza2dkbWx6ZFdGc2FYcGhkR2x2Yml3Z1luVjBJR05oYmlCeVpXRnpiMjVoWW14NUlHSmxJSE5sZENCMGJ5QmhibmxjYmlBZ0lDb2dhVzUwWldkbGNpQjJZV3gxWlNCcGJpQjBhR1VnY21GdVoyVWdNaUIwYnlBeE1EQXVYRzRnSUNBcUwxeHVJQ0J1UTI5dGNHOXVaVzUwY3o4NklHNTFiV0psY2p0Y2JpQWdMeW9xWEc0Z0lDQXFJRlJvWlNCdWRXMWlaWElnYjJZZ2RISmhhVzVwYm1jZ1pYQnZZMmh6SUhSdklHSmxJSFZ6WldRZ2FXNGdiM0IwYVcxcGVtbHVaeUIwYUdWY2JpQWdJQ29nYkc5M0lHUnBiV1Z1YzJsdmJtRnNJR1Z0WW1Wa1pHbHVaeTRnVEdGeVoyVnlJSFpoYkhWbGN5QnlaWE4xYkhRZ2FXNGdiVzl5WlNCaFkyTjFjbUYwWlZ4dUlDQWdLaUJsYldKbFpHUnBibWR6TGlCSlppQk9iMjVsSUdseklITndaV05wWm1sbFpDQmhJSFpoYkhWbElIZHBiR3dnWW1VZ2MyVnNaV04wWldRZ1ltRnpaV1FnYjI1Y2JpQWdJQ29nZEdobElITnBlbVVnYjJZZ2RHaGxJR2x1Y0hWMElHUmhkR0Z6WlhRZ0tESXdNQ0JtYjNJZ2JHRnlaMlVnWkdGMFlYTmxkSE1zSURVd01DQm1iM0lnYzIxaGJHd3BMbHh1SUNBZ0tpOWNiaUFnYmtWd2IyTm9jejg2SUc1MWJXSmxjanRjYmlBZ0x5b3FYRzRnSUNBcUlGUm9aU0J6YVhwbElHOW1JR3h2WTJGc0lHNWxhV2RvWW05eWFHOXZaQ0FvYVc0Z2RHVnliWE1nYjJZZ2JuVnRZbVZ5SUc5bUlHNWxhV2RvWW05eWFXNW5YRzRnSUNBcUlITmhiWEJzWlNCd2IybHVkSE1wSUhWelpXUWdabTl5SUcxaGJtbG1iMnhrSUdGd2NISnZlR2x0WVhScGIyNHVJRXhoY21kbGNpQjJZV3gxWlhOY2JpQWdJQ29nY21WemRXeDBJR2x1SUcxdmNtVWdaMnh2WW1Gc0lIWnBaWGR6SUc5bUlIUm9aU0J0WVc1cFptOXNaQ3dnZDJocGJHVWdjMjFoYkd4bGNseHVJQ0FnS2lCMllXeDFaWE1nY21WemRXeDBJR2x1SUcxdmNtVWdiRzlqWVd3Z1pHRjBZU0JpWldsdVp5QndjbVZ6WlhKMlpXUXVJRWx1SUdkbGJtVnlZV3hjYmlBZ0lDb2dkbUZzZFdWeklITm9iM1ZzWkNCaVpTQnBiaUIwYUdVZ2NtRnVaMlVnTWlCMGJ5QXhNREF1WEc0Z0lDQXFMMXh1SUNCdVRtVnBaMmhpYjNKelB6b2diblZ0WW1WeU8xeHVJQ0F2S2lwY2JpQWdJQ29nVkdobElHNTFiV0psY2lCdlppQnVaV2RoZEdsMlpTQnpZVzF3YkdWeklIUnZJSE5sYkdWamRDQndaWElnY0c5emFYUnBkbVVnYzJGdGNHeGxYRzRnSUNBcUlHbHVJSFJvWlNCdmNIUnBiV2w2WVhScGIyNGdjSEp2WTJWemN5NGdTVzVqY21WaGMybHVaeUIwYUdseklIWmhiSFZsSUhkcGJHd2djbVZ6ZFd4MFhHNGdJQ0FxSUdsdUlHZHlaV0YwWlhJZ2NtVndkV3h6YVhabElHWnZjbU5sSUdKbGFXNW5JR0Z3Y0d4cFpXUXNJR2R5WldGMFpYSWdiM0IwYVcxcGVtRjBhVzl1WEc0Z0lDQXFJR052YzNRc0lHSjFkQ0J6YkdsbmFIUnNlU0J0YjNKbElHRmpZM1Z5WVdONUxseHVJQ0FnS2k5Y2JpQWdibVZuWVhScGRtVlRZVzF3YkdWU1lYUmxQem9nYm5WdFltVnlPMXh1SUNBdktpcGNiaUFnSUNvZ1YyVnBaMmgwYVc1bklHRndjR3hwWldRZ2RHOGdibVZuWVhScGRtVWdjMkZ0Y0d4bGN5QnBiaUJzYjNjZ1pHbHRaVzV6YVc5dVlXd2daVzFpWldSa2FXNW5YRzRnSUNBcUlHOXdkR2x0YVhwaGRHbHZiaTRnVm1Gc2RXVnpJR2hwWjJobGNpQjBhR0Z1SUc5dVpTQjNhV3hzSUhKbGMzVnNkQ0JwYmlCbmNtVmhkR1Z5SUhkbGFXZG9kRnh1SUNBZ0tpQmlaV2x1WnlCbmFYWmxiaUIwYnlCdVpXZGhkR2wyWlNCellXMXdiR1Z6TGx4dUlDQWdLaTljYmlBZ2NtVndkV3h6YVc5dVUzUnlaVzVuZEdnL09pQnVkVzFpWlhJN1hHNGdJQzhxS2x4dUlDQWdLaUJVYUdVZ2NITmxkV1J2TFhKaGJtUnZiU0J1ZFcxaVpYSWdaMlZ1WlhKaGRHOXlJSFZ6WldRZ1lua2dkR2hsSUhOMGIyTm9ZWE4wYVdNZ2NHRnlkSE1nYjJZZ2RHaGxYRzRnSUNBcUlHRnNaMjl5YVhSb2JTNWNiaUFnSUNvdlhHNGdJSEpoYm1SdmJUODZJRkpoYm1SdmJVWnVPMXh1SUNBdktpcGNiaUFnSUNvZ1NXNTBaWEp3YjJ4aGRHVWdZbVYwZDJWbGJpQW9ablY2ZW5rcElIVnVhVzl1SUdGdVpDQnBiblJsY25ObFkzUnBiMjRnWVhNZ2RHaGxJSE5sZENCdmNHVnlZWFJwYjI1Y2JpQWdJQ29nZFhObFpDQjBieUJqYjIxaWFXNWxJR3h2WTJGc0lHWjFlbnA1SUhOcGJYQnNhV05wWVd3Z2MyVjBjeUIwYnlCdlluUmhhVzRnWVNCbmJHOWlZV3dnWm5WNmVubGNiaUFnSUNvZ2MybHRjR3hwWTJsaGJDQnpaWFJ6TGlCQ2IzUm9JR1oxZW5wNUlITmxkQ0J2Y0dWeVlYUnBiMjV6SUhWelpTQjBhR1VnY0hKdlpIVmpkQ0IwTFc1dmNtMHVYRzRnSUNBcUlGUm9aU0IyWVd4MVpTQnZaaUIwYUdseklIQmhjbUZ0WlhSbGNpQnphRzkxYkdRZ1ltVWdZbVYwZDJWbGJpQXdMakFnWVc1a0lERXVNRHNnWVNCMllXeDFaU0J2Wmx4dUlDQWdLaUF4TGpBZ2QybHNiQ0IxYzJVZ1lTQndkWEpsSUdaMWVucDVJSFZ1YVc5dUxDQjNhR2xzWlNBd0xqQWdkMmxzYkNCMWMyVWdZU0J3ZFhKbElHWjFlbnA1WEc0Z0lDQXFJR2x1ZEdWeWMyVmpkR2x2Ymk1Y2JpQWdJQ292WEc0Z0lITmxkRTl3VFdsNFVtRjBhVzgvT2lCdWRXMWlaWEk3WEc0Z0lDOHFLbHh1SUNBZ0tpQlVhR1VnWldabVpXTjBhWFpsSUhOallXeGxJRzltSUdWdFltVmtaR1ZrSUhCdmFXNTBjeTRnU1c0Z1kyOXRZbWx1WVhScGIyNGdkMmwwYUNCZ1lHMXBibDlrYVhOMFlHQmNiaUFnSUNvZ2RHaHBjeUJrWlhSbGNtMXBibVZ6SUdodmR5QmpiSFZ6ZEdWeVpXUXZZMngxYlhCbFpDQjBhR1VnWlcxaVpXUmtaV1FnY0c5cGJuUnpJR0Z5WlM1Y2JpQWdJQ292WEc0Z0lITndjbVZoWkQ4NklHNTFiV0psY2p0Y2JpQWdMeW9xWEc0Z0lDQXFJRVp2Y2lCMGNtRnVjMlp2Y20wZ2IzQmxjbUYwYVc5dWN5QW9aVzFpWldSa2FXNW5JRzVsZHlCd2IybHVkSE1nZFhOcGJtY2dZU0IwY21GcGJtVmtJRzF2WkdWc0tWeHVJQ0FnS2lCMGFHbHpJSGRwYkd3Z1kyOXVkSEp2YkNCb2IzY2dZV2RuY21WemMybDJaV3g1SUhSdklITmxZWEpqYUNCbWIzSWdibVZoY21WemRDQnVaV2xuYUdKdmNuTXVYRzRnSUNBcUlFeGhjbWRsY2lCMllXeDFaWE1nZDJsc2JDQnlaWE4xYkhRZ2FXNGdjMnh2ZDJWeUlIQmxjbVp2Y20xaGJtTmxJR0oxZENCdGIzSmxJR0ZqWTNWeVlYUmxYRzRnSUNBcUlHNWxZWEpsYzNRZ2JtVnBaMmhpYjNJZ1pYWmhiSFZoZEdsdmJpNWNiaUFnSUNvdlhHNGdJSFJ5WVc1elptOXliVkYxWlhWbFUybDZaVDg2SUc1MWJXSmxjanRjYm4xY2JseHVaWGh3YjNKMElHbHVkR1Z5Wm1GalpTQlZUVUZRVTNWd1pYSjJhWE5sWkZCaGNtRnRjeUI3WEc0Z0lDOHFLbHh1SUNBZ0tpQlVhR1VnYldWMGNtbGpJSFZ6WldRZ2RHOGdiV1ZoYzNWeVpTQmthWE4wWVc1alpTQm1iM0lnWVNCMFlYSm5aWFFnWVhKeVlYa2dhWE1nZFhOcGJtY2djM1Z3WlhKMmFYTmxaRnh1SUNBZ0tpQmthVzFsYm5OcGIyNGdjbVZrZFdOMGFXOXVMaUJDZVNCa1pXWmhkV3gwSUhSb2FYTWdhWE1nSjJOaGRHVm5iM0pwWTJGc0p5QjNhR2xqYUNCM2FXeHNJRzFsWVhOMWNtVmNiaUFnSUNvZ1pHbHpkR0Z1WTJVZ2FXNGdkR1Z5YlhNZ2IyWWdkMmhsZEdobGNpQmpZWFJsWjI5eWFXVnpJRzFoZEdOb0lHOXlJR0Z5WlNCa2FXWm1aWEpsYm5RdUlFWjFjblJvWlhKdGIzSmxMRnh1SUNBZ0tpQnBaaUJ6WlcxcExYTjFjR1Z5ZG1selpXUWdhWE1nY21WeGRXbHlaV1FnZEdGeVoyVjBJSFpoYkhWbGN5QnZaaUF0TVNCM2FXeHNJR0psSUhSeVpXRjBaV1FnWVhOY2JpQWdJQ29nZFc1c1lXSmxiR3hsWkNCMWJtUmxjaUIwYUdVZ0oyTmhkR1ZuYjNKcFkyRnNKeUJ0WlhSeWFXTXVJRWxtSUhSb1pTQjBZWEpuWlhRZ1lYSnlZWGtnZEdGclpYTmNiaUFnSUNvZ1kyOXVkR2x1ZFc5MWN5QjJZV3gxWlhNZ0tHVXVaeTRnWm05eUlHRWdjbVZuY21WemMybHZiaUJ3Y205aWJHVnRLU0IwYUdWdUlHMWxkSEpwWXlCdlppQW5iREVuWEc0Z0lDQXFJRzl5SUNkc01pY2dhWE1nY0hKdlltRmliSGtnYlc5eVpTQmhjSEJ5YjNCeWFXRjBaUzVjYmlBZ0lDb3ZYRzRnSUhSaGNtZGxkRTFsZEhKcFl6ODZJRlJoY21kbGRFMWxkSEpwWXp0Y2JpQWdMeW9xWEc0Z0lDQXFJRmRsYVdkb2RHbHVaeUJtWVdOMGIzSWdZbVYwZDJWbGJpQmtZWFJoSUhSdmNHOXNiMmQ1SUdGdVpDQjBZWEpuWlhRZ2RHOXdiMnh2WjNrdUlFRWdkbUZzZFdVZ2IyWmNiaUFnSUNvZ01DNHdJSGRsYVdkb2RITWdaVzUwYVhKbGJIa2diMjRnWkdGMFlTd2dZU0IyWVd4MVpTQnZaaUF4TGpBZ2QyVnBaMmgwY3lCbGJuUnBjbVZzZVNCdmJpQjBZWEpuWlhRdVhHNGdJQ0FxSUZSb1pTQmtaV1poZFd4MElHOW1JREF1TlNCaVlXeGhibU5sY3lCMGFHVWdkMlZwWjJoMGFXNW5JR1Z4ZFdGc2JIa2dZbVYwZDJWbGJpQmtZWFJoSUdGdVpDQjBZWEpuWlhRdVhHNGdJQ0FxTDF4dUlDQjBZWEpuWlhSWFpXbG5hSFEvT2lCdWRXMWlaWEk3WEc0Z0lDOHFLbHh1SUNBZ0tpQlVhR1VnYm5WdFltVnlJRzltSUc1bFlYSmxjM1FnYm1WcFoyaGliM0p6SUhSdklIVnpaU0IwYnlCamIyNXpkSEoxWTNRZ2RHaGxJSFJoY21kbGRDQnphVzF3YkdOcFlXeGNiaUFnSUNvZ2MyVjBMaUJFWldaaGRXeDBjeUIwYnlCMGFHVWdZRzVsWVhKbGMzUk9aV2xuYUdKdmNuTmdJSEJoY21GdFpYUmxjaTVjYmlBZ0lDb3ZYRzRnSUhSaGNtZGxkRTVPWldsbmFHSnZjbk0vT2lCdWRXMWlaWEk3WEc1OVhHNWNiaThxS2x4dUlDb2dWVTFCVUNCd2NtOXFaV04wYVc5dUlITjVjM1JsYlN3Z1ltRnpaV1FnYjI0Z2RHaGxJSEI1ZEdodmJpQnBiWEJzWlcxbGJuUmhkR2x2YmlCbWNtOXRJRTFqU1c1dVpYTXNJRXdzWEc0Z0tpQklaV0ZzZVN3Z1Npd2dWVTFCVURvZ1ZXNXBabTl5YlNCTllXNXBabTlzWkNCQmNIQnliM2hwYldGMGFXOXVJR0Z1WkNCUWNtOXFaV04wYVc5dUlHWnZjaUJFYVcxbGJuTnBiMjVjYmlBcUlGSmxaSFZqZEdsdmJpQW9hSFIwY0hNNkx5OW5hWFJvZFdJdVkyOXRMMnh0WTJsdWJtVnpMM1Z0WVhBcExseHVJQ3BjYmlBcUlGUm9hWE1nYVcxd2JHVnRaVzUwWVhScGIyNGdaR2xtWm1WeWN5QnBiaUJoSUdabGR5QnlaV2RoY21Sek9seHVJQ29nWVNrZ1ZHaGxJR2x1YVhScFlXeHBlbUYwYVc5dUlHOW1JSFJvWlNCbGJXSmxaR1JwYm1jZ1ptOXlJRzl3ZEdsdGFYcGhkR2x2YmlCcGN5QnViM1FnWTI5dGNIVjBaV1FnZFhOcGJtZGNiaUFxSUNBZ0lHRWdjM0JsWTNSeVlXd2diV1YwYUc5a0xDQnlZWFJvWlhJZ2FYUWdhWE1nYVc1cGRHbGhiR2w2WldRZ2NtRnVaRzl0YkhrdUlGUm9hWE1nWVhadmFXUnpJSE52YldWY2JpQXFJQ0FnSUdOdmJYQjFkR0YwYVc5dVlXeHNlU0JwYm5SbGJuTnBkbVVnYldGMGNtbDRJR1ZwWjJWdUlHTnZiWEIxZEdGMGFXOXVjeUIwYUdGMElHRnlaVzRuZENCbFlYTnBiSGxjYmlBcUlDQWdJSEJ2Y25SbFpDQjBieUJLWVhaaFUyTnlhWEIwTGx4dUlDb2dZaWtnUVNCc2IzUWdiMllnWENKbGVIUnlZVndpSUdaMWJtTjBhVzl1WVd4cGRIa2dhR0Z6SUdKbFpXNGdiMjFwZEhSbFpDQm1jbTl0SUhSb2FYTWdhVzF3YkdWdFpXNTBZWFJwYjI0c1hHNGdLaUFnSUNCdGIzTjBJRzV2ZEdGaWJIa2dZU0JuY21WaGRDQmtaV0ZzSUc5bUlHRnNkR1Z5Ym1GMFpTQmthWE4wWVc1alpTQm1kVzVqZEdsdmJuTXVYRzRnS2x4dUlDb2dWR2hwY3lCcGJYQnNaVzFsYm5SaGRHbHZiaUJ3Y205MmFXUmxjeUIwYUhKbFpTQnRaWFJvYjJSeklHOW1JSEpsWkhWamFXNW5JR1JwYldWdWMybHZibUZzYVhSNU9seHVJQ29nTVNrZ1ptbDBPaUJtYVhRZ2RHaGxJR1JoZEdFZ2MzbHVZMmh5YjI1dmRYTnNlVnh1SUNvZ01pa2dabWwwUVhONWJtTTZJR1pwZENCMGFHVWdaR0YwWVNCaGMzbHVZMmh5YjI1dmRYTnNlU3dnZDJsMGFDQmhJR05oYkd4aVlXTnJJR1oxYm1OMGFXOXVJSEJ5YjNacFpHVmtYRzRnS2lBZ0lDQWdJSFJvWVhRZ2FYTWdhVzUyYjJ0bFpDQnZiaUJsWVdOb0lHOXdkR2x0YVhwaGRHbHZiaUJ6ZEdWd0xseHVJQ29nTXlrZ2FXNXBkR2xoYkdsNlpVWnBkQ0F2SUhOMFpYQTZJRzFoYm5WaGJHeDVJR2x1YVhScFlXeHBlbVVnZEdobElHRnNaMjl5YVhSb2JTQjBhR1Z1SUdWNGNHeHBZM1JzZVZ4dUlDb2dJQ0FnSUNCemRHVndJSFJvY205MVoyZ2daV0ZqYUNCbGNHOWphQ0J2WmlCMGFHVWdVMGRFSUc5d2RHbHRhWHBoZEdsdmJseHVJQ292WEc1bGVIQnZjblFnWTJ4aGMzTWdWVTFCVUNCN1hHNGdJSEJ5YVhaaGRHVWdiR1ZoY201cGJtZFNZWFJsSUQwZ01TNHdPMXh1SUNCd2NtbDJZWFJsSUd4dlkyRnNRMjl1Ym1WamRHbDJhWFI1SUQwZ01TNHdPMXh1SUNCd2NtbDJZWFJsSUcxcGJrUnBjM1FnUFNBd0xqRTdYRzRnSUhCeWFYWmhkR1VnYmtOdmJYQnZibVZ1ZEhNZ1BTQXlPMXh1SUNCd2NtbDJZWFJsSUc1RmNHOWphSE1nUFNBd08xeHVJQ0J3Y21sMllYUmxJRzVPWldsbmFHSnZjbk1nUFNBeE5UdGNiaUFnY0hKcGRtRjBaU0J1WldkaGRHbDJaVk5oYlhCc1pWSmhkR1VnUFNBMU8xeHVJQ0J3Y21sMllYUmxJSEpoYm1SdmJTQTlJRTFoZEdndWNtRnVaRzl0TzF4dUlDQndjbWwyWVhSbElISmxjSFZzYzJsdmJsTjBjbVZ1WjNSb0lEMGdNUzR3TzF4dUlDQndjbWwyWVhSbElITmxkRTl3VFdsNFVtRjBhVzhnUFNBeExqQTdYRzRnSUhCeWFYWmhkR1VnYzNCeVpXRmtJRDBnTVM0d08xeHVJQ0J3Y21sMllYUmxJSFJ5WVc1elptOXliVkYxWlhWbFUybDZaU0E5SURRdU1EdGNibHh1SUNBdkx5QlRkWEJsY25acGMyVmtJSEJ5YjJwbFkzUnBiMjRnY0dGeVlXMXpYRzRnSUhCeWFYWmhkR1VnZEdGeVoyVjBUV1YwY21saklEMGdWR0Z5WjJWMFRXVjBjbWxqTG1OaGRHVm5iM0pwWTJGc08xeHVJQ0J3Y21sMllYUmxJSFJoY21kbGRGZGxhV2RvZENBOUlEQXVOVHRjYmlBZ2NISnBkbUYwWlNCMFlYSm5aWFJPVG1WcFoyaGliM0p6SUQwZ01UVTdYRzVjYmlBZ2NISnBkbUYwWlNCa2FYTjBZVzVqWlVadU9pQkVhWE4wWVc1alpVWnVJRDBnYm5WdFpYSnBZenRjYmx4dUlDQXZMeUJMVGs0Z2MzUmhkR1VnS0dOaGJpQmlaU0J3Y21WamIyMXdkWFJsWkNCaGJtUWdjM1Z3Y0d4cFpXUWdkbWxoSUdsdWFYUnBZV3hwZW1WR2FYUXBYRzRnSUhCeWFYWmhkR1VnYTI1dVNXNWthV05sY3o4NklHNTFiV0psY2x0ZFcxMDdYRzRnSUhCeWFYWmhkR1VnYTI1dVJHbHpkR0Z1WTJWelB6b2diblZ0WW1WeVcxMWJYVHRjYmx4dUlDQXZMeUJKYm5SbGNtNWhiQ0JuY21Gd2FDQmpiMjV1WldOMGFYWnBkSGtnY21Wd2NtVnpaVzUwWVhScGIyNWNiaUFnY0hKcGRtRjBaU0JuY21Gd2FDRTZJRzFoZEhKcGVDNVRjR0Z5YzJWTllYUnlhWGc3WEc0Z0lIQnlhWFpoZEdVZ1dDRTZJRlpsWTNSdmNqdGNiaUFnY0hKcGRtRjBaU0JwYzBsdWFYUnBZV3hwZW1Wa0lEMGdabUZzYzJVN1hHNGdJSEJ5YVhaaGRHVWdjbkJHYjNKbGMzUTZJSFJ5WldVdVJteGhkRlJ5WldWYlhTQTlJRnRkTzF4dUlDQndjbWwyWVhSbElHbHVhWFJHY205dFVtRnVaRzl0SVRvZ2JtNUVaWE5qWlc1MExrbHVhWFJHY205dFVtRnVaRzl0Um00N1hHNGdJSEJ5YVhaaGRHVWdhVzVwZEVaeWIyMVVjbVZsSVRvZ2JtNUVaWE5qWlc1MExrbHVhWFJHY205dFZISmxaVVp1TzF4dUlDQndjbWwyWVhSbElITmxZWEpqYUNFNklHNXVSR1Z6WTJWdWRDNVRaV0Z5WTJoR2JqdGNiaUFnY0hKcGRtRjBaU0J6WldGeVkyaEhjbUZ3YUNFNklHMWhkSEpwZUM1VGNHRnljMlZOWVhSeWFYZzdYRzVjYmlBZ0x5OGdVM1Z3WlhKMmFYTmxaQ0J3Y205cVpXTjBhVzl1SUd4aFltVnNjeUF2SUhSaGNtZGxkSE5jYmlBZ2NISnBkbUYwWlNCWlB6b2diblZ0WW1WeVcxMDdYRzVjYmlBZ0x5OGdVSEp2YW1WamRHVmtJR1Z0WW1Wa1pHbHVaMXh1SUNCd2NtbDJZWFJsSUdWdFltVmtaR2x1WnpvZ2JuVnRZbVZ5VzExYlhTQTlJRnRkTzF4dUlDQndjbWwyWVhSbElHOXdkR2x0YVhwaGRHbHZibE4wWVhSbElEMGdibVYzSUU5d2RHbHRhWHBoZEdsdmJsTjBZWFJsS0NrN1hHNWNibHh1SUNCblpYUWdibVZwWjJoaWIzSnpLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjBhR2x6TG01T1pXbG5hR0p2Y25NN1hHNGdJSDFjYmlBZ1kyOXVjM1J5ZFdOMGIzSW9jR0Z5WVcxek9pQlZUVUZRVUdGeVlXMWxkR1Z5Y3lBOUlIdDlLU0I3WEc0Z0lDQWdZMjl1YzNRZ2MyVjBVR0Z5WVcwZ1BTQW9hMlY1T2lCclpYbHZaaUJWVFVGUVVHRnlZVzFsZEdWeWN5a2dQVDRnZTF4dUlDQWdJQ0FnTHk5QWRITXRhV2R1YjNKbFhHNGdJQ0FnSUNCcFppQW9jR0Z5WVcxelcydGxlVjBnSVQwOUlIVnVaR1ZtYVc1bFpDa2dkR2hwYzF0clpYbGRJRDBnY0dGeVlXMXpXMnRsZVYwN1hHNGdJQ0FnZlR0Y2JseHVJQ0FnSUhObGRGQmhjbUZ0S0Nka2FYTjBZVzVqWlVadUp5azdYRzRnSUNBZ2MyVjBVR0Z5WVcwb0oyeGxZWEp1YVc1blVtRjBaU2NwTzF4dUlDQWdJSE5sZEZCaGNtRnRLQ2RzYjJOaGJFTnZibTVsWTNScGRtbDBlU2NwTzF4dUlDQWdJSE5sZEZCaGNtRnRLQ2R0YVc1RWFYTjBKeWs3WEc0Z0lDQWdjMlYwVUdGeVlXMG9KMjVEYjIxd2IyNWxiblJ6SnlrN1hHNGdJQ0FnYzJWMFVHRnlZVzBvSjI1RmNHOWphSE1uS1R0Y2JpQWdJQ0J6WlhSUVlYSmhiU2duYms1bGFXZG9ZbTl5Y3ljcE8xeHVJQ0FnSUhObGRGQmhjbUZ0S0NkdVpXZGhkR2wyWlZOaGJYQnNaVkpoZEdVbktUdGNiaUFnSUNCelpYUlFZWEpoYlNnbmNtRnVaRzl0SnlrN1hHNGdJQ0FnYzJWMFVHRnlZVzBvSjNKbGNIVnNjMmx2YmxOMGNtVnVaM1JvSnlrN1hHNGdJQ0FnYzJWMFVHRnlZVzBvSjNObGRFOXdUV2w0VW1GMGFXOG5LVHRjYmlBZ0lDQnpaWFJRWVhKaGJTZ25jM0J5WldGa0p5azdYRzRnSUNBZ2MyVjBVR0Z5WVcwb0ozUnlZVzV6Wm05eWJWRjFaWFZsVTJsNlpTY3BPMXh1SUNBZ0lIUm9hWE11ZEdGeVoyVjBUazVsYVdkb1ltOXljeUE5SUhCaGNtRnRjeTV1VG1WcFoyaGliM0p6SUh4OElIUm9hWE11Yms1bGFXZG9ZbTl5Y3lCOGZDQjBhR2x6TG5SaGNtZGxkRTVPWldsbmFHSnZjbk03WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1JtbDBJSFJvWlNCa1lYUmhJSFJ2SUdFZ2NISnZhbVZqZEdWa0lHVnRZbVZrWkdsdVp5QnpjR0ZqWlNCemVXNWphSEp2Ym05MWMyeDVMbHh1SUNBZ0tpOWNiaUFnWm1sMEtGZzZJRlpsWTNSdmNpa2dlMXh1SUNBZ0lIUm9hWE11YVc1cGRHbGhiR2w2WlVacGRDaFlLVHRjYmlBZ0lDQjBhR2x6TG05d2RHbHRhWHBsVEdGNWIzVjBLQ2s3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdkR2hwY3k1bGJXSmxaR1JwYm1jN1hHNGdJSDFjYmx4dUlDQXZLaXBjYmlBZ0lDb2dSbWwwSUhSb1pTQmtZWFJoSUhSdklHRWdjSEp2YW1WamRHVmtJR1Z0WW1Wa1pHbHVaeUJ6Y0dGalpTQmhjM2x1WTJoeWIyNXZkWE5zZVN3Z2QybDBhQ0JoSUdOaGJHeGlZV05yWEc0Z0lDQXFJR1oxYm1OMGFXOXVJR2x1ZG05clpXUWdiMjRnWlhabGNua2daWEJ2WTJnZ2IyWWdiM0IwYVcxcGVtRjBhVzl1TGx4dUlDQWdLaTljYmlBZ1lYTjVibU1nWm1sMFFYTjVibU1vWEc0Z0lDQWdXRG9nVm1WamRHOXlMRnh1SUNBZ0lHTmhiR3hpWVdOck9pQW9aWEJ2WTJoT2RXMWlaWEk2SUc1MWJXSmxjaWtnUFQ0Z2RtOXBaQ0I4SUdKdmIyeGxZVzRnUFNBb0tTQTlQaUIwY25WbFhHNGdJQ2tnZTF4dUlDQWdJSFJvYVhNdWFXNXBkR2xoYkdsNlpVWnBkQ2hZS1R0Y2JseHVJQ0FnSUdGM1lXbDBJSFJvYVhNdWIzQjBhVzFwZW1WTVlYbHZkWFJCYzNsdVl5aGpZV3hzWW1GamF5azdYRzRnSUNBZ2NtVjBkWEp1SUhSb2FYTXVaVzFpWldSa2FXNW5PMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVsdWFYUnBZV3hwZW1WeklIQmhjbUZ0WlhSbGNuTWdibVZsWkdWa0lHWnZjaUJ6ZFhCbGNuWnBjMlZrSUhCeWIycGxZM1JwYjI0dVhHNGdJQ0FxTDF4dUlDQnpaWFJUZFhCbGNuWnBjMlZrVUhKdmFtVmpkR2x2YmloWk9pQnVkVzFpWlhKYlhTd2djR0Z5WVcxek9pQlZUVUZRVTNWd1pYSjJhWE5sWkZCaGNtRnRjeUE5SUh0OUtTQjdYRzRnSUNBZ2RHaHBjeTVaSUQwZ1dUdGNiaUFnSUNCMGFHbHpMblJoY21kbGRFMWxkSEpwWXlBOUlIQmhjbUZ0Y3k1MFlYSm5aWFJOWlhSeWFXTWdmSHdnZEdocGN5NTBZWEpuWlhSTlpYUnlhV003WEc0Z0lDQWdkR2hwY3k1MFlYSm5aWFJYWldsbmFIUWdQU0J3WVhKaGJYTXVkR0Z5WjJWMFYyVnBaMmgwSUh4OElIUm9hWE11ZEdGeVoyVjBWMlZwWjJoME8xeHVJQ0FnSUhSb2FYTXVkR0Z5WjJWMFRrNWxhV2RvWW05eWN5QTlJSEJoY21GdGN5NTBZWEpuWlhST1RtVnBaMmhpYjNKeklIeDhJSFJvYVhNdWRHRnlaMlYwVGs1bGFXZG9ZbTl5Y3p0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkpibWwwYVdGc2FYcGxjeUIxYldGd0lIZHBkR2dnY0hKbFkyOXRjSFYwWldRZ1MwNU9JR2x1WkdsalpYTWdZVzVrSUdScGMzUmhibU5sY3k1Y2JpQWdJQ292WEc0Z0lITmxkRkJ5WldOdmJYQjFkR1ZrUzA1T0tHdHVia2x1WkdsalpYTTZJRzUxYldKbGNsdGRXMTBzSUd0dWJrUnBjM1JoYm1ObGN6b2diblZ0WW1WeVcxMWJYU2tnZTF4dUlDQWdJSFJvYVhNdWEyNXVTVzVrYVdObGN5QTlJR3R1YmtsdVpHbGpaWE03WEc0Z0lDQWdkR2hwY3k1cmJtNUVhWE4wWVc1alpYTWdQU0JyYm01RWFYTjBZVzVqWlhNN1hHNGdJSDFjYmx4dUlDQXZLaXBjYmlBZ0lDb2dTVzVwZEdsaGJHbDZaWE1nWm1sMElHSjVJR052YlhCMWRHbHVaeUJMVGs0Z1lXNWtJR0VnWm5WNmVua2djMmx0Y0d4cFkybGhiQ0J6WlhRc0lHRnpJSGRsYkd3Z1lYTmNiaUFnSUNvZ2FXNXBkR2xoYkdsNmFXNW5JSFJvWlNCd2NtOXFaV04wWldRZ1pXMWlaV1JrYVc1bmN5NGdVMlYwY3lCMGFHVWdiM0IwYVcxcGVtRjBhVzl1SUhOMFlYUmxJR0ZvWldGa1hHNGdJQ0FxSUc5bUlHOXdkR2x0YVhwaGRHbHZiaUJ6ZEdWd2N5NGdVbVYwZFhKdWN5QjBhR1VnYm5WdFltVnlJRzltSUdWd2IyTm9jeUIwYnlCaVpTQjFjMlZrSUdadmNpQjBhR1ZjYmlBZ0lDb2dVMGRFSUc5d2RHbHRhWHBoZEdsdmJpNWNiaUFnSUNvdlhHNGdJR2x1YVhScFlXeHBlbVZHYVhRb1dEb2dWbVZqZEc5eUtUb2diblZ0WW1WeUlIdGNiaUFnSUNCcFppQW9XQzVzWlc1bmRHZ2dQRDBnZEdocGN5NXVUbVZwWjJoaWIzSnpLVnh1SUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtHQk9iM1FnWlc1dmRXZG9JR1JoZEdFZ2NHOXBiblJ6SUNna2UxZ3ViR1Z1WjNSb2ZTa2dkRzhnWTNKbFlYUmxJRzVPWldsbmFHSnZjbk02SUNSN2RHaHBjeTV1VG1WcFoyaGliM0p6ZlM0Z0lFRmtaQ0J0YjNKbElHUmhkR0VnY0c5cGJuUnpJRzl5SUdGa2FuVnpkQ0IwYUdVZ1kyOXVabWxuZFhKaGRHbHZiaTVnS1R0Y2JseHVYRzRnSUNBZ0x5OGdWMlVnWkc5dUozUWdibVZsWkNCMGJ5QnlaV2x1YVhScFlXeHBlbVVnYVdZZ2QyVW5kbVVnWVd4eVpXRmtlU0JwYm1sMGFXRnNhWHBsWkNCbWIzSWdkR2hwY3lCa1lYUmhMbHh1SUNBZ0lHbG1JQ2gwYUdsekxsZ2dQVDA5SUZnZ0ppWWdkR2hwY3k1cGMwbHVhWFJwWVd4cGVtVmtLVnh1SUNBZ0lDQWdjbVYwZFhKdUlIUm9hWE11WjJWMFRrVndiMk5vY3lncE8xeHVYRzVjYmlBZ0lDQjBhR2x6TGxnZ1BTQllPMXh1WEc0Z0lDQWdhV1lnS0NGMGFHbHpMbXR1YmtsdVpHbGpaWE1nSmlZZ0lYUm9hWE11YTI1dVJHbHpkR0Z1WTJWektTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCcmJtNVNaWE4xYkhSeklEMGdkR2hwY3k1dVpXRnlaWE4wVG1WcFoyaGliM0p6S0ZncE8xeHVJQ0FnSUNBZ2RHaHBjeTVyYm01SmJtUnBZMlZ6SUQwZ2EyNXVVbVZ6ZFd4MGN5NXJibTVKYm1ScFkyVnpPMXh1SUNBZ0lDQWdkR2hwY3k1cmJtNUVhWE4wWVc1alpYTWdQU0JyYm01U1pYTjFiSFJ6TG10dWJrUnBjM1JoYm1ObGN6dGNiaUFnSUNCOVhHNWNiaUFnSUNCMGFHbHpMbWR5WVhCb0lEMGdkR2hwY3k1bWRYcDZlVk5wYlhCc2FXTnBZV3hUWlhRb1hHNGdJQ0FnSUNCWUxGeHVJQ0FnSUNBZ2RHaHBjeTV1VG1WcFoyaGliM0p6TEZ4dUlDQWdJQ0FnZEdocGN5NXpaWFJQY0UxcGVGSmhkR2x2WEc0Z0lDQWdLVHRjYmx4dUlDQWdJQzh2SUZObGRDQjFjQ0IwYUdVZ2MyVmhjbU5vSUdkeVlYQm9JR1p2Y2lCemRXSnpaWEYxWlc1MElIUnlZVzV6Wm05eWJXRjBhVzl1TGx4dUlDQWdJSFJvYVhNdWJXRnJaVk5sWVhKamFFWnVjeWdwTzF4dUlDQWdJSFJvYVhNdWMyVmhjbU5vUjNKaGNHZ2dQU0IwYUdsekxtMWhhMlZUWldGeVkyaEhjbUZ3YUNoWUtUdGNibHh1SUNBZ0lDOHZJRU5vWldOcklHbG1JSE4xY0dWeWRtbHpaV1FnY0hKdmFtVmpkR2x2Yml3Z2RHaGxiaUJoWkdwMWMzUWdkR2hsSUdkeVlYQm9MbHh1SUNBZ0lIUm9hWE11Y0hKdlkyVnpjMGR5WVhCb1JtOXlVM1Z3WlhKMmFYTmxaRkJ5YjJwbFkzUnBiMjRvS1R0Y2JseHVJQ0FnSUdOdmJuTjBJSHRjYmlBZ0lDQWdJR2hsWVdRc1hHNGdJQ0FnSUNCMFlXbHNMRnh1SUNBZ0lDQWdaWEJ2WTJoelVHVnlVMkZ0Y0d4bExGeHVJQ0FnSUgwZ1BTQjBhR2x6TG1sdWFYUnBZV3hwZW1WVGFXMXdiR2xqYVdGc1UyVjBSVzFpWldSa2FXNW5LQ2s3WEc1Y2JpQWdJQ0F2THlCVFpYUWdkR2hsSUc5d2RHbHRhWHBoZEdsdmJpQnliM1YwYVc1bElITjBZWFJsWEc0Z0lDQWdkR2hwY3k1dmNIUnBiV2w2WVhScGIyNVRkR0YwWlM1b1pXRmtJRDBnYUdWaFpEdGNiaUFnSUNCMGFHbHpMbTl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxMblJoYVd3Z1BTQjBZV2xzTzF4dUlDQWdJSFJvYVhNdWIzQjBhVzFwZW1GMGFXOXVVM1JoZEdVdVpYQnZZMmh6VUdWeVUyRnRjR3hsSUQwZ1pYQnZZMmh6VUdWeVUyRnRjR3hsTzF4dVhHNGdJQ0FnTHk4Z1RtOTNMQ0JwYm1sMGFXRnNhWHBsSUhSb1pTQnZjSFJwYldsNllYUnBiMjRnYzNSbGNITmNiaUFnSUNCMGFHbHpMbWx1YVhScFlXeHBlbVZQY0hScGJXbDZZWFJwYjI0b0tUdGNiaUFnSUNCMGFHbHpMbkJ5WlhCaGNtVkdiM0pQY0hScGJXbDZZWFJwYjI1TWIyOXdLQ2s3WEc0Z0lDQWdkR2hwY3k1cGMwbHVhWFJwWVd4cGVtVmtJRDBnZEhKMVpUdGNibHh1SUNBZ0lISmxkSFZ5YmlCMGFHbHpMbWRsZEU1RmNHOWphSE1vS1R0Y2JpQWdmVnh1WEc0Z0lIQnlhWFpoZEdVZ2JXRnJaVk5sWVhKamFFWnVjeWdwSUh0Y2JpQWdJQ0JqYjI1emRDQjdhVzVwZEVaeWIyMVVjbVZsTENCcGJtbDBSbkp2YlZKaGJtUnZiWDBnUFNCdWJrUmxjMk5sYm5RdWJXRnJaVWx1YVhScFlXeHBlbUYwYVc5dWN5aGNiaUFnSUNBZ0lIUm9hWE11WkdsemRHRnVZMlZHYmx4dUlDQWdJQ2s3WEc0Z0lDQWdkR2hwY3k1cGJtbDBSbkp2YlZSeVpXVWdQU0JwYm1sMFJuSnZiVlJ5WldVN1hHNGdJQ0FnZEdocGN5NXBibWwwUm5KdmJWSmhibVJ2YlNBOUlHbHVhWFJHY205dFVtRnVaRzl0TzF4dUlDQWdJSFJvYVhNdWMyVmhjbU5vSUQwZ2JtNUVaWE5qWlc1MExtMWhhMlZKYm1sMGFXRnNhWHBsWkU1T1UyVmhjbU5vS0hSb2FYTXVaR2x6ZEdGdVkyVkdiaWs3WEc0Z0lIMWNibHh1SUNCd2NtbDJZWFJsSUcxaGEyVlRaV0Z5WTJoSGNtRndhQ2hZT2lCV1pXTjBiM0lwSUh0Y2JpQWdJQ0JqYjI1emRDQnJibTVKYm1ScFkyVnpJRDBnZEdocGN5NXJibTVKYm1ScFkyVnpJVHRjYmlBZ0lDQmpiMjV6ZENCcmJtNUVhWE4wWVc1alpYTWdQU0IwYUdsekxtdHVia1JwYzNSaGJtTmxjeUU3WEc0Z0lDQWdZMjl1YzNRZ1pHbHRjeUE5SUZ0WUxteGxibWQwYUN3Z1dDNXNaVzVuZEdoZE8xeHVJQ0FnSUdOdmJuTjBJSE5sWVhKamFFZHlZWEJvSUQwZ2JtVjNJRzFoZEhKcGVDNVRjR0Z5YzJWTllYUnlhWGdvVzEwc0lGdGRMQ0JiWFN3Z1pHbHRjeWs3WEc0Z0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JyYm01SmJtUnBZMlZ6TG14bGJtZDBhRHNnYVNzcktTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCcmJtNGdQU0JyYm01SmJtUnBZMlZ6VzJsZE8xeHVJQ0FnSUNBZ1kyOXVjM1FnWkdsemRHRnVZMlZ6SUQwZ2EyNXVSR2x6ZEdGdVkyVnpXMmxkTzF4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYWlBOUlEQTdJR29nUENCcmJtNHViR1Z1WjNSb095QnFLeXNwSUh0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnYm1WcFoyaGliM0lnUFNCcmJtNWJhbDA3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR1JwYzNSaGJtTmxJRDBnWkdsemRHRnVZMlZ6VzJwZE8xeHVJQ0FnSUNBZ0lDQnBaaUFvWkdsemRHRnVZMlVnUGlBd0tWeHVJQ0FnSUNBZ0lDQWdJSE5sWVhKamFFZHlZWEJvTG5ObGRDaHBMQ0J1WldsbmFHSnZjaXdnWkdsemRHRnVZMlVwTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDFjYmx4dUlDQWdJR052Ym5OMElIUnlZVzV6Y0c5elpTQTlJRzFoZEhKcGVDNTBjbUZ1YzNCdmMyVW9jMlZoY21Ob1IzSmhjR2dwTzF4dUlDQWdJSEpsZEhWeWJpQnRZWFJ5YVhndWJXRjRhVzExYlNoelpXRnlZMmhIY21Gd2FDd2dkSEpoYm5Od2IzTmxLVHRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCVWNtRnVjMlp2Y20xeklHUmhkR0VnZEc4Z2RHaGxJR1Y0YVhOMGFXNW5JR1Z0WW1Wa1pHbHVaeUJ6Y0dGalpTNWNiaUFnSUNvdlhHNGdJSFJ5WVc1elptOXliU2gwYjFSeVlXNXpabTl5YlRvZ1ZtVmpkRzl5S1NCN1hHNGdJQ0FnTHk4Z1ZYTmxJSFJvWlNCd2NtVjJhVzkxY3lCeVlYZEVZWFJoWEc0Z0lDQWdZMjl1YzNRZ2NtRjNSR0YwWVNBOUlIUm9hWE11V0R0Y2JpQWdJQ0JwWmlBb2NtRjNSR0YwWVNBOVBUMGdkVzVrWldacGJtVmtJSHg4SUhKaGQwUmhkR0V1YkdWdVozUm9JRDA5UFNBd0tWeHVJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0NkT2J5QmtZWFJoSUdoaGN5QmlaV1Z1SUdacGRDNG5LVHRjYmx4dVhHNGdJQ0FnYkdWMElHNU9aV2xuYUdKdmNuTWdQU0JOWVhSb0xtWnNiMjl5S0hSb2FYTXViazVsYVdkb1ltOXljeUFxSUhSb2FYTXVkSEpoYm5ObWIzSnRVWFZsZFdWVGFYcGxLVHRjYmlBZ0lDQnVUbVZwWjJoaWIzSnpJRDBnVFdGMGFDNXRhVzRvY21GM1JHRjBZUzVzWlc1bmRHZ3NJRzVPWldsbmFHSnZjbk1wTzF4dUlDQWdJR052Ym5OMElHbHVhWFFnUFNCdWJrUmxjMk5sYm5RdWFXNXBkR2xoYkdsNlpWTmxZWEpqYUNoY2JpQWdJQ0FnSUhSb2FYTXVjbkJHYjNKbGMzUXNYRzRnSUNBZ0lDQnlZWGRFWVhSaExGeHVJQ0FnSUNBZ2RHOVVjbUZ1YzJadmNtMHNYRzRnSUNBZ0lDQnVUbVZwWjJoaWIzSnpMRnh1SUNBZ0lDQWdkR2hwY3k1cGJtbDBSbkp2YlZKaGJtUnZiU3hjYmlBZ0lDQWdJSFJvYVhNdWFXNXBkRVp5YjIxVWNtVmxMRnh1SUNBZ0lDQWdkR2hwY3k1eVlXNWtiMjFjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdZMjl1YzNRZ2NtVnpkV3gwSUQwZ2RHaHBjeTV6WldGeVkyZ29jbUYzUkdGMFlTd2dkR2hwY3k1elpXRnlZMmhIY21Gd2FDd2dhVzVwZEN3Z2RHOVVjbUZ1YzJadmNtMHBPMXh1WEc0Z0lDQWdiR1YwSUh0cGJtUnBZMlZ6TENCM1pXbG5hSFJ6T2lCa2FYTjBZVzVqWlhOOUlEMGdhR1ZoY0M1a1pXaGxZWEJUYjNKMEtISmxjM1ZzZENrN1hHNWNiaUFnSUNCcGJtUnBZMlZ6SUQwZ2FXNWthV05sY3k1dFlYQW9LSGdwSUQwK0lIZ3VjMnhwWTJVb01Dd2dkR2hwY3k1dVRtVnBaMmhpYjNKektTazdYRzRnSUNBZ1pHbHpkR0Z1WTJWeklEMGdaR2x6ZEdGdVkyVnpMbTFoY0Nnb2VDa2dQVDRnZUM1emJHbGpaU2d3TENCMGFHbHpMbTVPWldsbmFHSnZjbk1wS1R0Y2JseHVJQ0FnSUdOdmJuTjBJR0ZrYW5WemRHVmtURzlqWVd4RGIyNXVaV04wYVhacGRIa2dQU0JOWVhSb0xtMWhlQ2d3TENCMGFHbHpMbXh2WTJGc1EyOXVibVZqZEdsMmFYUjVJQzBnTVNrN1hHNGdJQ0FnWTI5dWMzUWdlM05wWjIxaGN5d2djbWh2YzMwZ1BTQjBhR2x6TG5OdGIyOTBhRXRPVGtScGMzUmhibU5sS0Z4dUlDQWdJQ0FnWkdsemRHRnVZMlZ6TEZ4dUlDQWdJQ0FnZEdocGN5NXVUbVZwWjJoaWIzSnpMRnh1SUNBZ0lDQWdZV1JxZFhOMFpXUk1iMk5oYkVOdmJtNWxZM1JwZG1sMGVWeHVJQ0FnSUNrN1hHNWNiaUFnSUNCamIyNXpkQ0I3Y205M2N5d2dZMjlzY3l3Z2RtRnNjMzBnUFNCMGFHbHpMbU52YlhCMWRHVk5aVzFpWlhKemFHbHdVM1J5Wlc1bmRHaHpLRnh1SUNBZ0lDQWdhVzVrYVdObGN5eGNiaUFnSUNBZ0lHUnBjM1JoYm1ObGN5eGNiaUFnSUNBZ0lITnBaMjFoY3l4Y2JpQWdJQ0FnSUhKb2IzTmNiaUFnSUNBcE8xeHVYRzRnSUNBZ1kyOXVjM1FnYzJsNlpTQTlJRnQwYjFSeVlXNXpabTl5YlM1c1pXNW5kR2dzSUhKaGQwUmhkR0V1YkdWdVozUm9YVHRjYmlBZ0lDQnNaWFFnWjNKaGNHZ2dQU0J1WlhjZ2JXRjBjbWw0TGxOd1lYSnpaVTFoZEhKcGVDaHliM2R6TENCamIyeHpMQ0IyWVd4ekxDQnphWHBsS1R0Y2JseHVJQ0FnSUM4dklGUm9hWE1nZDJGeklHRWdkbVZ5ZVNCemNHVmphV0ZzYkhrZ1kyOXVjM1J5ZFdOMFpXUWdaM0poY0dnZ2QybDBhQ0JqYjI1emRHRnVkQ0JrWldkeVpXVXVYRzRnSUNBZ0x5OGdWR2hoZENCc1pYUnpJSFZ6SUdSdklHWmhibU41SUhWdWNHRmphMmx1WnlCaWVTQnlaWE5vWVhCcGJtY2dkR2hsSUdOemNpQnRZWFJ5YVhnZ2FXNWthV05sYzF4dUlDQWdJQzh2SUdGdVpDQmtZWFJoTGlCRWIybHVaeUJ6YnlCeVpXeHBaWE1nYjI0Z2RHaGxJR052Ym5OMFlXNTBJR1JsWjNKbFpTQmhjM04xYlhCMGFXOXVJVnh1WEc0Z0lDQWdZMjl1YzNRZ2JtOXliV1ZrSUQwZ2JXRjBjbWw0TG01dmNtMWhiR2w2WlNobmNtRndhQ3dnYldGMGNtbDRMazV2Y20xVWVYQmxMbXd4S1R0Y2JseHVJQ0FnSUdOdmJuTjBJR056Y2sxaGRISnBlQ0E5SUcxaGRISnBlQzVuWlhSRFUxSW9ibTl5YldWa0tUdGNiaUFnSUNCamIyNXpkQ0J1VUc5cGJuUnpJRDBnZEc5VWNtRnVjMlp2Y20wdWJHVnVaM1JvTzF4dVhHNGdJQ0FnWTI5dWMzUWdaVWx1WkdsalpYTWdQU0IxZEdsc2N5NXlaWE5vWVhCbE1tUW9YRzRnSUNBZ0lDQmpjM0pOWVhSeWFYZ3VhVzVrYVdObGN5eGNiaUFnSUNBZ0lHNVFiMmx1ZEhNc1hHNGdJQ0FnSUNCMGFHbHpMbTVPWldsbmFHSnZjbk5jYmlBZ0lDQXBPMXh1WEc0Z0lDQWdZMjl1YzNRZ1pWZGxhV2RvZEhNZ1BTQjFkR2xzY3k1eVpYTm9ZWEJsTW1Rb1hHNGdJQ0FnSUNCamMzSk5ZWFJ5YVhndWRtRnNkV1Z6TEZ4dUlDQWdJQ0FnYmxCdmFXNTBjeXhjYmlBZ0lDQWdJSFJvYVhNdWJrNWxhV2RvWW05eWMxeHVJQ0FnSUNrN1hHNWNiaUFnSUNCamIyNXpkQ0JsYldKbFpHUnBibWNnUFNCcGJtbDBWSEpoYm5ObWIzSnRLR1ZKYm1ScFkyVnpMQ0JsVjJWcFoyaDBjeXdnZEdocGN5NWxiV0psWkdScGJtY3BPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JrVndiMk5vY3lBOUlIUm9hWE11YmtWd2IyTm9jeUEvWEc0Z0lDQWdJQ0IwYUdsekxtNUZjRzlqYUhNZ0x5QXpJRHBjYmlBZ0lDQWdJR2R5WVhCb0xtNVNiM2R6SUR3OUlERXdNREF3SUQ5Y2JpQWdJQ0FnSUNBZ01UQXdJRHBjYmlBZ0lDQWdJQ0FnTXpBN1hHNWNiaUFnSUNCamIyNXpkQ0JuY21Gd2FFMWhlQ0E5SUdkeVlYQm9YRzRnSUNBZ0lDQXVaMlYwVm1Gc2RXVnpLQ2xjYmlBZ0lDQWdJQzV5WldSMVkyVW9LRzFoZUN3Z2RtRnNLU0E5UGlBb2RtRnNJRDRnYldGNElEOGdkbUZzSURvZ2JXRjRLU3dnTUNrN1hHNGdJQ0FnWjNKaGNHZ2dQU0JuY21Gd2FDNXRZWEFvS0haaGJIVmxLU0E5UGlBb2RtRnNkV1VnUENCbmNtRndhRTFoZUNBdklHNUZjRzlqYUhNZ1B5QXdJRG9nZG1Gc2RXVXBLVHRjYmlBZ0lDQm5jbUZ3YUNBOUlHMWhkSEpwZUM1bGJHbHRhVzVoZEdWYVpYSnZjeWhuY21Gd2FDazdYRzVjYmlBZ0lDQmpiMjV6ZENCbGNHOWphSE5RWlhKVFlXMXdiR1VnUFNCMGFHbHpMbTFoYTJWRmNHOWphSE5RWlhKVFlXMXdiR1VvWEc0Z0lDQWdJQ0JuY21Gd2FDNW5aWFJXWVd4MVpYTW9LU3hjYmlBZ0lDQWdJRzVGY0c5amFITmNiaUFnSUNBcE8xeHVJQ0FnSUdOdmJuTjBJR2hsWVdRZ1BTQm5jbUZ3YUM1blpYUlNiM2R6S0NrN1hHNGdJQ0FnWTI5dWMzUWdkR0ZwYkNBOUlHZHlZWEJvTG1kbGRFTnZiSE1vS1R0Y2JseHVJQ0FnSUM4dklFbHVhWFJwWVd4cGVtVWdiM0IwYVcxcGVtRjBhVzl1SUhOc2FXZG9kR3g1SUdScFptWmxjbVZ1ZEd4NUlIUm9ZVzRnZEdobElHWnBkQ0J0WlhSb2IyUXVYRzRnSUNBZ2RHaHBjeTVoYzNOcFoyNVBjSFJwYldsNllYUnBiMjVUZEdGMFpWQmhjbUZ0WlhSbGNuTW9lMXh1SUNBZ0lDQWdhR1ZoWkVWdFltVmtaR2x1WnpvZ1pXMWlaV1JrYVc1bkxGeHVJQ0FnSUNBZ2RHRnBiRVZ0WW1Wa1pHbHVaem9nZEdocGN5NWxiV0psWkdScGJtY3NYRzRnSUNBZ0lDQm9aV0ZrTEZ4dUlDQWdJQ0FnZEdGcGJDeGNiaUFnSUNBZ0lHTjFjbkpsYm5SRmNHOWphRG9nTUN4Y2JpQWdJQ0FnSUc1RmNHOWphSE1zWEc0Z0lDQWdJQ0J1Vm1WeWRHbGpaWE02SUdkeVlYQm9MbWRsZEVScGJYTW9LVnN4WFN4Y2JpQWdJQ0FnSUdWd2IyTm9jMUJsY2xOaGJYQnNaU3hjYmlBZ0lDQjlLVHRjYmlBZ0lDQjBhR2x6TG5CeVpYQmhjbVZHYjNKUGNIUnBiV2w2WVhScGIyNU1iMjl3S0NrN1hHNWNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXZjSFJwYldsNlpVeGhlVzkxZENncE8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRU5vWldOcmN5QnBaaUIzWlNkeVpTQjFjMmx1WnlCemRYQmxjblpwYzJWa0lIQnliMnBsWTNScGIyNHNJSFJvWlc0Z2NISnZZMlZ6Y3lCMGFHVWdaM0poY0doY2JpQWdJQ29nWVdOamIzSmthVzVuYkhrdVhHNGdJQ0FxTDF4dUlDQndjbWwyWVhSbElIQnliMk5sYzNOSGNtRndhRVp2Y2xOMWNHVnlkbWx6WldSUWNtOXFaV04wYVc5dUtDa2dlMXh1SUNBZ0lHTnZibk4wSUh0WkxDQllmU0E5SUhSb2FYTTdYRzRnSUNBZ2FXWWdLRmtwSUh0Y2JpQWdJQ0FnSUdsbUlDaFpMbXhsYm1kMGFDQWhQVDBnV0M1c1pXNW5kR2dwWEc0Z0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWduVEdWdVozUm9JRzltSUZnZ1lXNWtJSGtnYlhWemRDQmlaU0JsY1hWaGJDY3BPMXh1WEc1Y2JpQWdJQ0FnSUdsbUlDaDBhR2x6TG5SaGNtZGxkRTFsZEhKcFl5QTlQVDBnVkdGeVoyVjBUV1YwY21sakxtTmhkR1ZuYjNKcFkyRnNLU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR3gwSUQwZ2RHaHBjeTUwWVhKblpYUlhaV2xuYUhRZ1BDQXhMakE3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR1poY2tScGMzUWdQU0JzZENBL0lESXVOU0FxSUNneExqQWdMeUFvTVM0d0lDMGdkR2hwY3k1MFlYSm5aWFJYWldsbmFIUXBLU0E2SURFdU1HVXhNanRjYmlBZ0lDQWdJQ0FnZEdocGN5NW5jbUZ3YUNBOUlIUm9hWE11WTJGMFpXZHZjbWxqWVd4VGFXMXdiR2xqYVdGc1UyVjBTVzUwWlhKelpXTjBhVzl1S0Z4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11WjNKaGNHZ3NYRzRnSUNBZ0lDQWdJQ0FnV1N4Y2JpQWdJQ0FnSUNBZ0lDQm1ZWEpFYVhOMFhHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ0lDQXZMeUJVVDBSUElDaGhibVI1WTI5bGJtVnVRQ2s2SUdGa1pDQnViMjR0WTJGMFpXZHZjbWxqWVd3Z2MzVndaWEoyYVhObFpDQmxiV0psWkdScGJtZHpMbHh1SUNBZ0lIMWNiaUFnZlZ4dVhHNGdJQzhxS2x4dUlDQWdLaUJOWVc1MVlXeHNlU0J6ZEdWd0lIUm9jbTkxWjJnZ2RHaGxJRzl3ZEdsdGFYcGhkR2x2YmlCd2NtOWpaWE56SUc5dVpTQmxjRzlqYUNCaGRDQmhJSFJwYldVdVhHNGdJQ0FxTDF4dUlDQnpkR1Z3S0NrZ2UxeHVJQ0FnSUdOdmJuTjBJSHRqZFhKeVpXNTBSWEJ2WTJoOUlEMGdkR2hwY3k1dmNIUnBiV2w2WVhScGIyNVRkR0YwWlR0Y2JseHVJQ0FnSUdsbUlDaGpkWEp5Wlc1MFJYQnZZMmdnUENCMGFHbHpMbWRsZEU1RmNHOWphSE1vS1NsY2JpQWdJQ0FnSUhSb2FYTXViM0IwYVcxcGVtVk1ZWGx2ZFhSVGRHVndLR04xY25KbGJuUkZjRzlqYUNrN1hHNWNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXZjSFJwYldsNllYUnBiMjVUZEdGMFpTNWpkWEp5Wlc1MFJYQnZZMmc3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1VtVjBkWEp1Y3lCMGFHVWdZMjl0Y0hWMFpXUWdjSEp2YW1WamRHVmtJR1Z0WW1Wa1pHbHVaeTVjYmlBZ0lDb3ZYRzRnSUdkbGRFVnRZbVZrWkdsdVp5Z3BJSHRjYmlBZ0lDQnlaWFIxY200Z2RHaHBjeTVsYldKbFpHUnBibWM3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1EyOXRjSFYwWlNCMGFHVWdZR0J1VG1WcFoyaGliM0p6WUdBZ2JtVmhjbVZ6ZENCd2IybHVkSE1nWm05eUlHVmhZMmdnWkdGMFlTQndiMmx1ZENCcGJpQmdZRmhnWUZ4dUlDQWdLaUJVYUdseklHMWhlU0JpWlNCbGVHRmpkQ3dnWW5WMElHMXZjbVVnYkdsclpXeDVJR2x6SUdGd2NISnZlR2x0WVhSbFpDQjJhV0VnYm1WaGNtVnpkQ0J1WldsbmFHSnZjbHh1SUNBZ0tpQmtaWE5qWlc1MExseHVJQ0FnS2k5Y2JpQWdjSEpwZG1GMFpTQnVaV0Z5WlhOMFRtVnBaMmhpYjNKektGZzZJRlpsWTNSdmNpa2dlMXh1SUNBZ0lHTnZibk4wSUh0a2FYTjBZVzVqWlVadUxDQnVUbVZwWjJoaWIzSnpmU0E5SUhSb2FYTTdYRzRnSUNBZ1kyOXVjM1FnYkc5bk1pQTlJQ2h1T2lCdWRXMWlaWElwSUQwK0lFMWhkR2d1Ykc5bktHNHBJQzhnVFdGMGFDNXNiMmNvTWlrN1hHNGdJQ0FnWTI5dWMzUWdiV1YwY21salRrNUVaWE5qWlc1MElEMGdibTVFWlhOalpXNTBMbTFoYTJWT1RrUmxjMk5sYm5Rb1pHbHpkR0Z1WTJWR2Jpd2dkR2hwY3k1eVlXNWtiMjBwTzF4dVhHNGdJQ0FnTHk4Z1NHRnVaR3hsSUhCNWRHaHZiak1nY205MWJtUnBibWNnWkc5M2JpQm1jbTl0SURBdU5TQmthWE5qY25CaGJtTjVYRzRnSUNBZ1kyOXVjM1FnY205MWJtUWdQU0FvYmpvZ2JuVnRZbVZ5S1NBOVBpQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2JpQTlQVDBnTUM0MUlEOGdNQ0E2SUUxaGRHZ3VjbTkxYm1Rb2JpazdYRzRnSUNBZ2ZUdGNibHh1SUNBZ0lHTnZibk4wSUc1VWNtVmxjeUE5SURVZ0t5Qk5ZWFJvTG1ac2IyOXlLSEp2ZFc1a0tGZ3ViR1Z1WjNSb0lDb3FJREF1TlNBdklESXdMakFwS1R0Y2JpQWdJQ0JqYjI1emRDQnVTWFJsY25NZ1BTQk5ZWFJvTG0xaGVDZzFMQ0JOWVhSb0xtWnNiMjl5S0UxaGRHZ3VjbTkxYm1Rb2JHOW5NaWhZTG14bGJtZDBhQ2twS1NrN1hHNWNiaUFnSUNCMGFHbHpMbkp3Um05eVpYTjBJRDBnZEhKbFpTNXRZV3RsUm05eVpYTjBLRmdzSUc1T1pXbG5hR0p2Y25Nc0lHNVVjbVZsY3l3Z2RHaHBjeTV5WVc1a2IyMHBPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JHVmhaa0Z5Y21GNUlEMGdkSEpsWlM1dFlXdGxUR1ZoWmtGeWNtRjVLSFJvYVhNdWNuQkdiM0psYzNRcE8xeHVJQ0FnSUdOdmJuTjBJSHRwYm1ScFkyVnpMQ0IzWldsbmFIUnpmU0E5SUcxbGRISnBZMDVPUkdWelkyVnVkQ2hjYmlBZ0lDQWdJRmdzWEc0Z0lDQWdJQ0JzWldGbVFYSnlZWGtzWEc0Z0lDQWdJQ0J1VG1WcFoyaGliM0p6TEZ4dUlDQWdJQ0FnYmtsMFpYSnpYRzRnSUNBZ0tUdGNiaUFnSUNCeVpYUjFjbTRnZTJ0dWJrbHVaR2xqWlhNNklHbHVaR2xqWlhNc0lHdHVia1JwYzNSaGJtTmxjem9nZDJWcFoyaDBjMzA3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1IybDJaVzRnWVNCelpYUWdiMllnWkdGMFlTQllMQ0JoSUc1bGFXZG9ZbTl5YUc5dlpDQnphWHBsTENCaGJtUWdZU0J0WldGemRYSmxJRzltSUdScGMzUmhibU5sWEc0Z0lDQXFJR052YlhCMWRHVWdkR2hsSUdaMWVucDVJSE5wYlhCc2FXTnBZV3dnYzJWMElDaG9aWEpsSUhKbGNISmxjMlZ1ZEdWa0lHRnpJR0VnWm5WNmVua2daM0poY0dnZ2FXNWNiaUFnSUNvZ2RHaGxJR1p2Y20wZ2IyWWdZU0J6Y0dGeWMyVWdiV0YwY21sNEtTQmhjM052WTJsaGRHVmtJSFJ2SUhSb1pTQmtZWFJoTGlCVWFHbHpJR2x6SUdSdmJtVWdZbmxjYmlBZ0lDb2diRzlqWVd4c2VTQmhjSEJ5YjNocGJXRjBhVzVuSUdkbGIyUmxjMmxqSUdScGMzUmhibU5sSUdGMElHVmhZMmdnY0c5cGJuUXNJR055WldGMGFXNW5JR0VnWm5WNmVubGNiaUFnSUNvZ2MybHRjR3hwWTJsaGJDQnpaWFFnWm05eUlHVmhZMmdnYzNWamFDQndiMmx1ZEN3Z1lXNWtJSFJvWlc0Z1kyOXRZbWx1YVc1bklHRnNiQ0IwYUdVZ2JHOWpZV3hjYmlBZ0lDb2dablY2ZW5rZ2MybHRjR3hwWTJsaGJDQnpaWFJ6SUdsdWRHOGdZU0JuYkc5aVlXd2diMjVsSUhacFlTQmhJR1oxZW5wNUlIVnVhVzl1TGx4dUlDQWdLaTljYmlBZ2NISnBkbUYwWlNCbWRYcDZlVk5wYlhCc2FXTnBZV3hUWlhRb1hHNGdJQ0FnV0RvZ1ZtVmpkRzl5TEZ4dUlDQWdJRzVPWldsbmFHSnZjbk02SUc1MWJXSmxjaXhjYmlBZ0lDQnpaWFJQY0UxcGVGSmhkR2x2SUQwZ01TNHdYRzRnSUNrZ2UxeHVJQ0FnSUdOdmJuTjBJSHRyYm01SmJtUnBZMlZ6SUQwZ1cxMHNJR3R1YmtScGMzUmhibU5sY3lBOUlGdGRMQ0JzYjJOaGJFTnZibTVsWTNScGRtbDBlWDBnUFNCMGFHbHpPMXh1WEc0Z0lDQWdZMjl1YzNRZ2UzTnBaMjFoY3l3Z2NtaHZjMzBnUFNCMGFHbHpMbk50YjI5MGFFdE9Ua1JwYzNSaGJtTmxLRnh1SUNBZ0lDQWdhMjV1UkdsemRHRnVZMlZ6TEZ4dUlDQWdJQ0FnYms1bGFXZG9ZbTl5Y3l4Y2JpQWdJQ0FnSUd4dlkyRnNRMjl1Ym1WamRHbDJhWFI1WEc0Z0lDQWdLVHRjYmx4dUlDQWdJR052Ym5OMElIdHliM2R6TENCamIyeHpMQ0IyWVd4emZTQTlJSFJvYVhNdVkyOXRjSFYwWlUxbGJXSmxjbk5vYVhCVGRISmxibWQwYUhNb1hHNGdJQ0FnSUNCcmJtNUpibVJwWTJWekxGeHVJQ0FnSUNBZ2EyNXVSR2x6ZEdGdVkyVnpMRnh1SUNBZ0lDQWdjMmxuYldGekxGeHVJQ0FnSUNBZ2NtaHZjMXh1SUNBZ0lDazdYRzVjYmlBZ0lDQmpiMjV6ZENCemFYcGxJRDBnVzFndWJHVnVaM1JvTENCWUxteGxibWQwYUYwN1hHNGdJQ0FnWTI5dWMzUWdjM0JoY25ObFRXRjBjbWw0SUQwZ2JtVjNJRzFoZEhKcGVDNVRjR0Z5YzJWTllYUnlhWGdvY205M2N5d2dZMjlzY3l3Z2RtRnNjeXdnYzJsNlpTazdYRzVjYmlBZ0lDQmpiMjV6ZENCMGNtRnVjM0J2YzJVZ1BTQnRZWFJ5YVhndWRISmhibk53YjNObEtITndZWEp6WlUxaGRISnBlQ2s3WEc0Z0lDQWdZMjl1YzNRZ2NISnZaRTFoZEhKcGVDQTlJRzFoZEhKcGVDNXdZV2x5ZDJselpVMTFiSFJwY0d4NUtITndZWEp6WlUxaGRISnBlQ3dnZEhKaGJuTndiM05sS1R0Y2JseHVJQ0FnSUdOdmJuTjBJR0VnUFNCdFlYUnlhWGd1YzNWaWRISmhZM1FvYldGMGNtbDRMbUZrWkNoemNHRnljMlZOWVhSeWFYZ3NJSFJ5WVc1emNHOXpaU2tzSUhCeWIyUk5ZWFJ5YVhncE8xeHVJQ0FnSUdOdmJuTjBJR0lnUFNCdFlYUnlhWGd1YlhWc2RHbHdiSGxUWTJGc1lYSW9ZU3dnYzJWMFQzQk5hWGhTWVhScGJ5azdYRzRnSUNBZ1kyOXVjM1FnWXlBOUlHMWhkSEpwZUM1dGRXeDBhWEJzZVZOallXeGhjaWh3Y205a1RXRjBjbWw0TENBeExqQWdMU0J6WlhSUGNFMXBlRkpoZEdsdktUdGNiaUFnSUNCamIyNXpkQ0J5WlhOMWJIUWdQU0J0WVhSeWFYZ3VZV1JrS0dJc0lHTXBPMXh1WEc0Z0lDQWdjbVYwZFhKdUlISmxjM1ZzZER0Y2JpQWdmVnh1WEc0Z0lDOHFLbHh1SUNBZ0tpQkRiMjFpYVc1bElHRWdablY2ZW5rZ2MybHRjR3hwWTJsaGJDQnpaWFFnZDJsMGFDQmhibTkwYUdWeUlHWjFlbnA1SUhOcGJYQnNhV05wWVd3Z2MyVjBYRzRnSUNBcUlHZGxibVZ5WVhSbFpDQm1jbTl0SUdOaGRHVm5iM0pwWTJGc0lHUmhkR0VnZFhOcGJtY2dZMkYwWldkdmNtbGpZV3dnWkdsemRHRnVZMlZ6TGlCVWFHVWdkR0Z5WjJWMFhHNGdJQ0FxSUdSaGRHRWdhWE1nWVhOemRXMWxaQ0IwYnlCaVpTQmpZWFJsWjI5eWFXTmhiQ0JzWVdKbGJDQmtZWFJoSUNoaElIWmxZM1J2Y2lCdlppQnNZV0psYkhNcExGeHVJQ0FnS2lCaGJtUWdkR2hwY3lCM2FXeHNJSFZ3WkdGMFpTQjBhR1VnWm5WNmVua2djMmx0Y0d4cFkybGhiQ0J6WlhRZ2RHOGdjbVZ6Y0dWamRDQjBhR0YwSUd4aFltVnNJR1JoZEdFdVhHNGdJQ0FxTDF4dUlDQndjbWwyWVhSbElHTmhkR1ZuYjNKcFkyRnNVMmx0Y0d4cFkybGhiRk5sZEVsdWRHVnljMlZqZEdsdmJpaGNiaUFnSUNCemFXMXdiR2xqYVdGc1UyVjBPaUJ0WVhSeWFYZ3VVM0JoY25ObFRXRjBjbWw0TEZ4dUlDQWdJSFJoY21kbGREb2diblZ0WW1WeVcxMHNYRzRnSUNBZ1ptRnlSR2x6ZERvZ2JuVnRZbVZ5TEZ4dUlDQWdJSFZ1YTI1dmQyNUVhWE4wSUQwZ01TNHdYRzRnSUNrZ2UxeHVJQ0FnSUd4bGRDQnBiblJsY25ObFkzUnBiMjRnUFNCbVlYTjBTVzUwWlhKelpXTjBhVzl1S0Z4dUlDQWdJQ0FnYzJsdGNHeHBZMmxoYkZObGRDeGNiaUFnSUNBZ0lIUmhjbWRsZEN4Y2JpQWdJQ0FnSUhWdWEyNXZkMjVFYVhOMExGeHVJQ0FnSUNBZ1ptRnlSR2x6ZEZ4dUlDQWdJQ2s3WEc0Z0lDQWdhVzUwWlhKelpXTjBhVzl1SUQwZ2JXRjBjbWw0TG1Wc2FXMXBibUYwWlZwbGNtOXpLR2x1ZEdWeWMyVmpkR2x2YmlrN1hHNGdJQ0FnY21WMGRYSnVJSEpsYzJWMFRHOWpZV3hEYjI1dVpXTjBhWFpwZEhrb2FXNTBaWEp6WldOMGFXOXVLVHRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCRGIyMXdkWFJsSUdFZ1kyOXVkR2x1ZFc5MWN5QjJaWEp6YVc5dUlHOW1JSFJvWlNCa2FYTjBZVzVqWlNCMGJ5QjBhR1VnYTNSb0lHNWxZWEpsYzNSY2JpQWdJQ29nYm1WcFoyaGliM0l1SUZSb1lYUWdhWE1zSUhSb2FYTWdhWE1nYzJsdGFXeGhjaUIwYnlCcmJtNHRaR2x6ZEdGdVkyVWdZblYwSUdGc2JHOTNjeUJqYjI1MGFXNTFiM1Z6WEc0Z0lDQXFJR3NnZG1Gc2RXVnpJSEpoZEdobGNpQjBhR0Z1SUhKbGNYVnBjbWx1WnlCaGJpQnBiblJsWjNKaGJDQnJMaUJKYmlCbGMzTmpaVzVqWlNCM1pTQmhjbVVnYzJsdGNHeDVYRzRnSUNBcUlHTnZiWEIxZEdsdVp5QjBhR1VnWkdsemRHRnVZMlVnYzNWamFDQjBhR0YwSUhSb1pTQmpZWEprYVc1aGJHbDBlU0J2WmlCbWRYcDZlU0J6WlhRZ2QyVWdaMlZ1WlhKaGRHVmNiaUFnSUNvZ2FYTWdheTVjYmlBZ0lDb3ZYRzRnSUhCeWFYWmhkR1VnYzIxdmIzUm9TMDVPUkdsemRHRnVZMlVvWEc0Z0lDQWdaR2x6ZEdGdVkyVnpPaUJXWldOMGIzSnpMRnh1SUNBZ0lHczZJRzUxYldKbGNpeGNiaUFnSUNCc2IyTmhiRU52Ym01bFkzUnBkbWwwZVNBOUlERXVNQ3hjYmlBZ0lDQnVTWFJsY2lBOUlEWTBMRnh1SUNBZ0lHSmhibVIzYVdSMGFDQTlJREV1TUZ4dUlDQXBJSHRjYmlBZ0lDQmpiMjV6ZENCMFlYSm5aWFFnUFNBb1RXRjBhQzVzYjJjb2F5a2dMeUJOWVhSb0xteHZaeWd5S1NrZ0tpQmlZVzVrZDJsa2RHZzdYRzRnSUNBZ1kyOXVjM1FnY21odklEMGdkWFJwYkhNdWVtVnliM01vWkdsemRHRnVZMlZ6TG14bGJtZDBhQ2s3WEc0Z0lDQWdZMjl1YzNRZ2NtVnpkV3gwSUQwZ2RYUnBiSE11ZW1WeWIzTW9aR2x6ZEdGdVkyVnpMbXhsYm1kMGFDazdYRzVjYmlBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR1JwYzNSaGJtTmxjeTVzWlc1bmRHZzdJR2tyS3lrZ2UxeHVJQ0FnSUNBZ2JHVjBJR3h2SUQwZ01DNHdPMXh1SUNBZ0lDQWdiR1YwSUdocElEMGdTVzVtYVc1cGRIazdYRzRnSUNBZ0lDQnNaWFFnYldsa0lEMGdNUzR3TzF4dVhHNGdJQ0FnSUNBdkx5QlVUMFJQT2lCVWFHbHpJR2x6SUhabGNua2dhVzVsWm1acFkybGxiblFzSUdKMWRDQjNhV3hzSUdSdklHWnZjaUJ1YjNjdUlFWkpXRTFGWEc0Z0lDQWdJQ0JqYjI1emRDQnBkR2hFYVhOMFlXNWpaWE1nUFNCa2FYTjBZVzVqWlhOYmFWMDdYRzRnSUNBZ0lDQmpiMjV6ZENCdWIyNWFaWEp2UkdsemRITWdQU0JwZEdoRWFYTjBZVzVqWlhNdVptbHNkR1Z5S0Noa0tTQTlQaUJrSUQ0Z01DNHdLVHRjYmx4dUlDQWdJQ0FnYVdZZ0tHNXZibHBsY205RWFYTjBjeTVzWlc1bmRHZ2dQajBnYkc5allXeERiMjV1WldOMGFYWnBkSGtwSUh0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnYVc1a1pYZ2dQU0JOWVhSb0xtWnNiMjl5S0d4dlkyRnNRMjl1Ym1WamRHbDJhWFI1S1R0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnYVc1MFpYSndiMnhoZEdsdmJpQTlJR3h2WTJGc1EyOXVibVZqZEdsMmFYUjVJQzBnYVc1a1pYZzdYRzRnSUNBZ0lDQWdJR2xtSUNocGJtUmxlQ0ErSURBcElIdGNiaUFnSUNBZ0lDQWdJQ0J5YUc5YmFWMGdQU0J1YjI1YVpYSnZSR2x6ZEhOYmFXNWtaWGdnTFNBeFhUdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2FXNTBaWEp3YjJ4aGRHbHZiaUErSUZOTlQwOVVTRjlMWDFSUFRFVlNRVTVEUlNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnY21odlcybGRJQ3M5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJR2x1ZEdWeWNHOXNZWFJwYjI0Z0tpQW9ibTl1V21WeWIwUnBjM1J6VzJsdVpHVjRYU0F0SUc1dmJscGxjbTlFYVhOMGMxdHBibVJsZUNBdElERmRLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hHNGdJQ0FnSUNBZ0lDQWdjbWh2VzJsZElEMGdhVzUwWlhKd2IyeGhkR2x2YmlBcUlHNXZibHBsY205RWFYTjBjMXN3WFR0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTQmxiSE5sSUdsbUlDaHViMjVhWlhKdlJHbHpkSE11YkdWdVozUm9JRDRnTUNrZ2UxeHVJQ0FnSUNBZ0lDQnlhRzliYVYwZ1BTQjFkR2xzY3k1dFlYZ29ibTl1V21WeWIwUnBjM1J6S1R0Y2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2JpQTlJREE3SUc0Z1BDQnVTWFJsY2pzZ2Jpc3JLU0I3WEc0Z0lDQWdJQ0FnSUd4bGRDQndjM1Z0SUQwZ01DNHdPMXh1SUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0JxSUQwZ01Uc2dhaUE4SUdScGMzUmhibU5sYzF0cFhTNXNaVzVuZEdnN0lHb3JLeWtnZTF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUdRZ1BTQmthWE4wWVc1alpYTmJhVjFiYWwwZ0xTQnlhRzliYVYwN1hHNGdJQ0FnSUNBZ0lDQWdhV1lnS0dRZ1BpQXdLVnh1SUNBZ0lDQWdJQ0FnSUNBZ2NITjFiU0FyUFNCTllYUm9MbVY0Y0NndEtHUWdMeUJ0YVdRcEtUdGNiaUFnSUNBZ0lDQWdJQ0JsYkhObFhHNGdJQ0FnSUNBZ0lDQWdJQ0J3YzNWdElDczlJREV1TUR0Y2JpQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJR2xtSUNoTllYUm9MbUZpY3lod2MzVnRJQzBnZEdGeVoyVjBLU0E4SUZOTlQwOVVTRjlMWDFSUFRFVlNRVTVEUlNsY2JpQWdJQ0FnSUNBZ0lDQmljbVZoYXp0Y2JseHVYRzRnSUNBZ0lDQWdJR2xtSUNod2MzVnRJRDRnZEdGeVoyVjBLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2FHa2dQU0J0YVdRN1hHNGdJQ0FnSUNBZ0lDQWdiV2xrSUQwZ0tHeHZJQ3NnYUdrcElDOGdNaTR3TzF4dUlDQWdJQ0FnSUNCOUlHVnNjMlVnZTF4dUlDQWdJQ0FnSUNBZ0lHeHZJRDBnYldsa08xeHVJQ0FnSUNBZ0lDQWdJR2xtSUNob2FTQTlQVDBnU1c1bWFXNXBkSGtwWEc0Z0lDQWdJQ0FnSUNBZ0lDQnRhV1FnS2owZ01qdGNiaUFnSUNBZ0lDQWdJQ0JsYkhObFhHNGdJQ0FnSUNBZ0lDQWdJQ0J0YVdRZ1BTQW9iRzhnS3lCb2FTa2dMeUF5TGpBN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdjbVZ6ZFd4MFcybGRJRDBnYldsa08xeHVYRzRnSUNBZ0lDQXZMeUJVVDBSUE9pQlVhR2x6SUdseklIWmxjbmtnYVc1bFptWnBZMmxsYm5Rc0lHSjFkQ0IzYVd4c0lHUnZJR1p2Y2lCdWIzY3VJRVpKV0UxRlhHNGdJQ0FnSUNCcFppQW9jbWh2VzJsZElENGdNQzR3S1NCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUcxbFlXNUpkR2hFYVhOMFlXNWpaWE1nUFNCMWRHbHNjeTV0WldGdUtHbDBhRVJwYzNSaGJtTmxjeWs3WEc0Z0lDQWdJQ0FnSUdsbUlDaHlaWE4xYkhSYmFWMGdQQ0JOU1U1ZlMxOUVTVk5VWDFORFFVeEZJQ29nYldWaGJrbDBhRVJwYzNSaGJtTmxjeWxjYmlBZ0lDQWdJQ0FnSUNCeVpYTjFiSFJiYVYwZ1BTQk5TVTVmUzE5RVNWTlVYMU5EUVV4RklDb2diV1ZoYmtsMGFFUnBjM1JoYm1ObGN6dGNiaUFnSUNBZ0lIMGdaV3h6WlNCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUcxbFlXNUVhWE4wWVc1alpYTWdQU0IxZEdsc2N5NXRaV0Z1S0dScGMzUmhibU5sY3k1dFlYQW9kWFJwYkhNdWJXVmhiaWtwTzF4dUlDQWdJQ0FnSUNCcFppQW9jbVZ6ZFd4MFcybGRJRHdnVFVsT1gwdGZSRWxUVkY5VFEwRk1SU0FxSUcxbFlXNUVhWE4wWVc1alpYTXBYRzRnSUNBZ0lDQWdJQ0FnY21WemRXeDBXMmxkSUQwZ1RVbE9YMHRmUkVsVFZGOVRRMEZNUlNBcUlHMWxZVzVFYVhOMFlXNWpaWE03WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmVnh1WEc0Z0lDQWdjbVYwZFhKdUlIdHphV2R0WVhNNklISmxjM1ZzZEN3Z2NtaHZjem9nY21odmZUdGNiaUFnZlZ4dVhHNGdJQzhxS2x4dUlDQWdLaUJEYjI1emRISjFZM1FnZEdobElHMWxiV0psY25Ob2FYQWdjM1J5Wlc1bmRHZ2daR0YwWVNCbWIzSWdkR2hsSURFdGMydGxiR1YwYjI0Z2IyWWdaV0ZqYUNCc2IyTmhiRnh1SUNBZ0tpQm1kWHA2ZVNCemFXMXdiR2xqYVdGc0lITmxkQ0F0TFNCMGFHbHpJR2x6SUdadmNtMWxaQ0JoY3lCaElITndZWEp6WlNCdFlYUnlhWGdnZDJobGNtVWdaV0ZqYUNCeWIzY2dhWE5jYmlBZ0lDb2dZU0JzYjJOaGJDQm1kWHA2ZVNCemFXMXdiR2xqYVdGc0lITmxkQ3dnZDJsMGFDQmhJRzFsYldKbGNuTm9hWEFnYzNSeVpXNW5kR2dnWm05eUlIUm9aVnh1SUNBZ0tpQXhMWE5wYlhCc1pYZ2dkRzhnWldGamFDQnZkR2hsY2lCa1lYUmhJSEJ2YVc1MExseHVJQ0FnS2k5Y2JpQWdjSEpwZG1GMFpTQmpiMjF3ZFhSbFRXVnRZbVZ5YzJocGNGTjBjbVZ1WjNSb2N5aGNiaUFnSUNCcmJtNUpibVJwWTJWek9pQldaV04wYjNKekxGeHVJQ0FnSUd0dWJrUnBjM1JoYm1ObGN6b2dWbVZqZEc5eWN5eGNiaUFnSUNCemFXZHRZWE02SUc1MWJXSmxjbHRkTEZ4dUlDQWdJSEpvYjNNNklHNTFiV0psY2x0ZFhHNGdJQ2s2SUhzZ2NtOTNjem9nYm5WdFltVnlXMTA3SUdOdmJITTZJRzUxYldKbGNsdGRPeUIyWVd4ek9pQnVkVzFpWlhKYlhTQjlJSHRjYmlBZ0lDQmpiMjV6ZENCdVUyRnRjR3hsY3lBOUlHdHVia2x1WkdsalpYTXViR1Z1WjNSb08xeHVJQ0FnSUdOdmJuTjBJRzVPWldsbmFHSnZjbk1nUFNCcmJtNUpibVJwWTJWeld6QmRMbXhsYm1kMGFEdGNibHh1SUNBZ0lHTnZibk4wSUhKdmQzTWdQU0IxZEdsc2N5NTZaWEp2Y3lodVUyRnRjR3hsY3lBcUlHNU9aV2xuYUdKdmNuTXBPMXh1SUNBZ0lHTnZibk4wSUdOdmJITWdQU0IxZEdsc2N5NTZaWEp2Y3lodVUyRnRjR3hsY3lBcUlHNU9aV2xuYUdKdmNuTXBPMXh1SUNBZ0lHTnZibk4wSUhaaGJITWdQU0IxZEdsc2N5NTZaWEp2Y3lodVUyRnRjR3hsY3lBcUlHNU9aV2xuYUdKdmNuTXBPMXh1WEc0Z0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0J1VTJGdGNHeGxjenNnYVNzcktTQjdYRzRnSUNBZ0lDQm1iM0lnS0d4bGRDQnFJRDBnTURzZ2FpQThJRzVPWldsbmFHSnZjbk03SUdvckt5a2dlMXh1SUNBZ0lDQWdJQ0JzWlhRZ2RtRnNJRDBnTUR0Y2JpQWdJQ0FnSUNBZ2FXWWdLR3R1YmtsdVpHbGpaWE5iYVYxYmFsMGdQVDA5SUMweEtWeHVJQ0FnSUNBZ0lDQWdJR052Ym5ScGJuVmxPeUF2THlCWFpTQmthV1J1SjNRZ1oyVjBJSFJvWlNCbWRXeHNJR3R1YmlCbWIzSWdhVnh1WEc0Z0lDQWdJQ0FnSUdsbUlDaHJibTVKYm1ScFkyVnpXMmxkVzJwZElEMDlQU0JwS1Z4dUlDQWdJQ0FnSUNBZ0lIWmhiQ0E5SURBdU1EdGNiaUFnSUNBZ0lDQWdaV3h6WlNCcFppQW9hMjV1UkdsemRHRnVZMlZ6VzJsZFcycGRJQzBnY21odmMxdHBYU0E4UFNBd0xqQXBYRzRnSUNBZ0lDQWdJQ0FnZG1Gc0lEMGdNUzR3TzF4dUlDQWdJQ0FnSUNCbGJITmxYRzRnSUNBZ0lDQWdJQ0FnZG1Gc0lEMGdUV0YwYUM1bGVIQW9MU2dvYTI1dVJHbHpkR0Z1WTJWelcybGRXMnBkSUMwZ2NtaHZjMXRwWFNrZ0x5QnphV2R0WVhOYmFWMHBLVHRjYmx4dVhHNGdJQ0FnSUNBZ0lISnZkM05iYVNBcUlHNU9aV2xuYUdKdmNuTWdLeUJxWFNBOUlHazdYRzRnSUNBZ0lDQWdJR052YkhOYmFTQXFJRzVPWldsbmFHSnZjbk1nS3lCcVhTQTlJR3R1YmtsdVpHbGpaWE5iYVYxYmFsMDdYRzRnSUNBZ0lDQWdJSFpoYkhOYmFTQXFJRzVPWldsbmFHSnZjbk1nS3lCcVhTQTlJSFpoYkR0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc1Y2JpQWdJQ0J5WlhSMWNtNGdlM0p2ZDNNc0lHTnZiSE1zSUhaaGJITjlPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVsdWFYUnBZV3hwZW1VZ1lTQm1kWHA2ZVNCemFXMXdiR2xqYVdGc0lITmxkQ0JsYldKbFpHUnBibWNzSUhWemFXNW5JR0VnYzNCbFkybG1hV1ZrWEc0Z0lDQXFJR2x1YVhScFlXeHBjMkYwYVc5dUlHMWxkR2h2WkNCaGJtUWdkR2hsYmlCdGFXNXBiV2w2YVc1bklIUm9aU0JtZFhwNmVTQnpaWFFnWTNKdmMzTWdaVzUwY205d2VWeHVJQ0FnS2lCaVpYUjNaV1Z1SUhSb1pTQXhMWE5yWld4bGRHOXVjeUJ2WmlCMGFHVWdhR2xuYUNCaGJtUWdiRzkzSUdScGJXVnVjMmx2Ym1Gc0lHWjFlbnA1SUhOcGJYQnNhV05wWVd4Y2JpQWdJQ29nYzJWMGN5NWNiaUFnSUNvdlhHNGdJSEJ5YVhaaGRHVWdhVzVwZEdsaGJHbDZaVk5wYlhCc2FXTnBZV3hUWlhSRmJXSmxaR1JwYm1jb0tTQjdYRzRnSUNBZ1kyOXVjM1FnYmtWd2IyTm9jeUE5SUhSb2FYTXVaMlYwVGtWd2IyTm9jeWdwTzF4dVhHNGdJQ0FnWTI5dWMzUWdlMjVEYjIxd2IyNWxiblJ6ZlNBOUlIUm9hWE03WEc0Z0lDQWdZMjl1YzNRZ1ozSmhjR2hXWVd4MVpYTWdQU0IwYUdsekxtZHlZWEJvTG1kbGRGWmhiSFZsY3lncE8xeHVJQ0FnSUd4bGRDQm5jbUZ3YUUxaGVDQTlJREE3WEc0Z0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JuY21Gd2FGWmhiSFZsY3k1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ2RtRnNkV1VnUFNCbmNtRndhRlpoYkhWbGMxdHBYVHRjYmlBZ0lDQWdJR2xtSUNobmNtRndhRTFoZUNBOElHZHlZWEJvVm1Gc2RXVnpXMmxkS1Z4dUlDQWdJQ0FnSUNCbmNtRndhRTFoZUNBOUlIWmhiSFZsTzF4dUlDQWdJSDFjYmx4dUlDQWdJR052Ym5OMElHZHlZWEJvSUQwZ2RHaHBjeTVuY21Gd2FDNXRZWEFvS0haaGJIVmxLU0E5UGlCN1hHNGdJQ0FnSUNCcFppQW9kbUZzZFdVZ1BDQm5jbUZ3YUUxaGVDQXZJRzVGY0c5amFITXBYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQXdPMXh1SUNBZ0lDQWdaV3h6WlZ4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnZG1Gc2RXVTdYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQXZMeUJYWlNkeVpTQnViM1FnWTI5dGNIVjBhVzVuSUhSb1pTQnpjR1ZqZEhKaGJDQnBibWwwYVdGc2FYcGhkR2x2YmlCcGJpQjBhR2x6SUdsdGNHeGxiV1Z1ZEdGMGFXOXVYRzRnSUNBZ0x5OGdkVzUwYVd3Z2QyVWdaR1YwWlhKdGFXNWxJR0VnWW1WMGRHVnlJR1ZwWjJWdWRtRnNkV1V2WldsblpXNTJaV04wYjNJZ1kyOXRjSFYwWVhScGIyNWNiaUFnSUNBdkx5QmhjSEJ5YjJGamFGeHVJQ0FnSUhSb2FYTXVaVzFpWldSa2FXNW5JRDBnZFhScGJITXVlbVZ5YjNNb1ozSmhjR2d1YmxKdmQzTXBMbTFoY0Nnb0tTQTlQaUI3WEc0Z0lDQWdJQ0J5WlhSMWNtNGdkWFJwYkhNdWVtVnliM01vYmtOdmJYQnZibVZ1ZEhNcExtMWhjQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQjFkR2xzY3k1MFlYVlNZVzVrS0hSb2FYTXVjbUZ1Wkc5dEtTQXFJREl3SUNzZ0xURXdPeUF2THlCU1lXNWtiMjBnWm5KdmJTQXRNVEFnZEc4Z01UQmNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lIMHBPMXh1WEc0Z0lDQWdMeThnUjJWMElHZHlZWEJvSUdSaGRHRWdhVzRnYjNKa1pYSmxaQ0IzWVhrdUxpNWNiaUFnSUNCamIyNXpkQ0IzWldsbmFIUnpPaUJ1ZFcxaVpYSmJYU0E5SUZ0ZE8xeHVJQ0FnSUdOdmJuTjBJR2hsWVdRNklHNTFiV0psY2x0ZElEMGdXMTA3WEc0Z0lDQWdZMjl1YzNRZ2RHRnBiRG9nYm5WdFltVnlXMTBnUFNCYlhUdGNiaUFnSUNCamIyNXpkQ0J5YjNkRGIyeFdZV3gxWlhNZ1BTQm5jbUZ3YUM1blpYUkJiR3dvS1R0Y2JpQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhKdmQwTnZiRlpoYkhWbGN5NXNaVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdaVzUwY25rZ1BTQnliM2REYjJ4V1lXeDFaWE5iYVYwN1hHNGdJQ0FnSUNCcFppQW9aVzUwY25rdWRtRnNkV1VwSUh0Y2JpQWdJQ0FnSUNBZ2QyVnBaMmgwY3k1d2RYTm9LR1Z1ZEhKNUxuWmhiSFZsS1R0Y2JpQWdJQ0FnSUNBZ2RHRnBiQzV3ZFhOb0tHVnVkSEo1TG5KdmR5azdYRzRnSUNBZ0lDQWdJR2hsWVdRdWNIVnphQ2hsYm5SeWVTNWpiMndwTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDFjYmlBZ0lDQmpiMjV6ZENCbGNHOWphSE5RWlhKVFlXMXdiR1VnUFNCMGFHbHpMbTFoYTJWRmNHOWphSE5RWlhKVFlXMXdiR1VvZDJWcFoyaDBjeXdnYmtWd2IyTm9jeWs3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdlMmhsWVdRc0lIUmhhV3dzSUdWd2IyTm9jMUJsY2xOaGJYQnNaWDA3WEc0Z0lIMWNibHh1SUNBdktpcGNiaUFnSUNvZ1IybDJaVzRnWVNCelpYUWdiMllnZDJWcFoyaDBjeUJoYm1RZ2JuVnRZbVZ5SUc5bUlHVndiMk5vY3lCblpXNWxjbUYwWlNCMGFHVWdiblZ0WW1WeUlHOW1YRzRnSUNBcUlHVndiMk5vY3lCd1pYSWdjMkZ0Y0d4bElHWnZjaUJsWVdOb0lIZGxhV2RvZEM1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2JXRnJaVVZ3YjJOb2MxQmxjbE5oYlhCc1pTaDNaV2xuYUhSek9pQnVkVzFpWlhKYlhTd2dia1Z3YjJOb2N6b2diblZ0WW1WeUtTQjdYRzRnSUNBZ1kyOXVjM1FnY21WemRXeDBJRDBnZFhScGJITXVabWxzYkdWa0tIZGxhV2RvZEhNdWJHVnVaM1JvTENBdE1TNHdLVHRjYmlBZ0lDQmpiMjV6ZENCdFlYZ2dQU0IxZEdsc2N5NXRZWGdvZDJWcFoyaDBjeWs3WEc0Z0lDQWdZMjl1YzNRZ2JsTmhiWEJzWlhNZ1BTQjNaV2xuYUhSekxtMWhjQ2dvZHlrZ1BUNGdLSGNnTHlCdFlYZ3BJQ29nYmtWd2IyTm9jeWs3WEc0Z0lDQWdibE5oYlhCc1pYTXVabTl5UldGamFDZ29iaXdnYVNrZ1BUNGdlMXh1SUNBZ0lDQWdhV1lnS0c0Z1BpQXdLU0J5WlhOMWJIUmJhVjBnUFNCdVJYQnZZMmh6SUM4Z2JsTmhiWEJzWlhOYmFWMDdYRzRnSUNBZ2ZTazdYRzRnSUNBZ2NtVjBkWEp1SUhKbGMzVnNkRHRjYmlBZ2ZWeHVYRzRnSUM4cUtseHVJQ0FnS2lCQmMzTnBaMjV6SUc5d2RHbHRhWHBoZEdsdmJpQnpkR0YwWlNCd1lYSmhiV1YwWlhKeklHWnliMjBnWVNCd1lYSjBhV0ZzSUc5d2RHbHRhWHBoZEdsdmJpQnpkR0YwWlM1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ1lYTnphV2R1VDNCMGFXMXBlbUYwYVc5dVUzUmhkR1ZRWVhKaGJXVjBaWEp6S0hOMFlYUmxPaUJRWVhKMGFXRnNQRTl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxQaWtnZTF4dUlDQWdJRTlpYW1WamRDNWhjM05wWjI0b2RHaHBjeTV2Y0hScGJXbDZZWFJwYjI1VGRHRjBaU3dnYzNSaGRHVXBPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUZObGRITWdZU0JtWlhjZ2IzQjBhVzFwZW1GMGFXOXVJSE4wWVhSbElIQmhjbUZ0WlhSbGNuTWdkR2hoZENCaGNtVWdibVZqWlhOellYSjVJR0psWm05eVpTQmxiblJsY21sdVoxeHVJQ0FnS2lCMGFHVWdiM0IwYVcxcGVtRjBhVzl1SUhOMFpYQWdiRzl2Y0M1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2NISmxjR0Z5WlVadmNrOXdkR2x0YVhwaGRHbHZia3h2YjNBb0tTQjdYRzRnSUNBZ0x5OGdTSGx3WlhKd1lYSmhiV1YwWlhKelhHNGdJQ0FnWTI5dWMzUWdlM0psY0hWc2MybHZibE4wY21WdVozUm9MQ0JzWldGeWJtbHVaMUpoZEdVc0lHNWxaMkYwYVhabFUyRnRjR3hsVW1GMFpYMGdQU0IwYUdsek8xeHVYRzRnSUNBZ1kyOXVjM1FnZTF4dUlDQWdJQ0FnWlhCdlkyaHpVR1Z5VTJGdGNHeGxMRnh1SUNBZ0lDQWdhR1ZoWkVWdFltVmtaR2x1Wnl4Y2JpQWdJQ0FnSUhSaGFXeEZiV0psWkdScGJtY3NYRzRnSUNBZ2ZTQTlJSFJvYVhNdWIzQjBhVzFwZW1GMGFXOXVVM1JoZEdVN1hHNWNiaUFnSUNCamIyNXpkQ0JrYVcwZ1BTQm9aV0ZrUlcxaVpXUmthVzVuV3pCZExteGxibWQwYUR0Y2JpQWdJQ0JqYjI1emRDQnRiM1psVDNSb1pYSWdQU0JvWldGa1JXMWlaV1JrYVc1bkxteGxibWQwYUNBOVBUMGdkR0ZwYkVWdFltVmtaR2x1Wnk1c1pXNW5kR2c3WEc1Y2JpQWdJQ0JqYjI1emRDQmxjRzlqYUhOUVpYSk9aV2RoZEdsMlpWTmhiWEJzWlNBOUlHVndiMk5vYzFCbGNsTmhiWEJzWlM1dFlYQW9YRzRnSUNBZ0lDQW9aU2tnUFQ0Z1pTQXZJRzVsWjJGMGFYWmxVMkZ0Y0d4bFVtRjBaVnh1SUNBZ0lDazdYRzRnSUNBZ1kyOXVjM1FnWlhCdlkyaFBaazVsZUhST1pXZGhkR2wyWlZOaGJYQnNaU0E5SUZzdUxpNWxjRzlqYUhOUVpYSk9aV2RoZEdsMlpWTmhiWEJzWlYwN1hHNGdJQ0FnWTI5dWMzUWdaWEJ2WTJoUFprNWxlSFJUWVcxd2JHVWdQU0JiTGk0dVpYQnZZMmh6VUdWeVUyRnRjR3hsWFR0Y2JseHVJQ0FnSUhSb2FYTXVZWE56YVdkdVQzQjBhVzFwZW1GMGFXOXVVM1JoZEdWUVlYSmhiV1YwWlhKektIdGNiaUFnSUNBZ0lHVndiMk5vVDJaT1pYaDBVMkZ0Y0d4bExGeHVJQ0FnSUNBZ1pYQnZZMmhQWms1bGVIUk9aV2RoZEdsMlpWTmhiWEJzWlN4Y2JpQWdJQ0FnSUdWd2IyTm9jMUJsY2s1bFoyRjBhWFpsVTJGdGNHeGxMRnh1SUNBZ0lDQWdiVzkyWlU5MGFHVnlMRnh1SUNBZ0lDQWdhVzVwZEdsaGJFRnNjR2hoT2lCc1pXRnlibWx1WjFKaGRHVXNYRzRnSUNBZ0lDQmhiSEJvWVRvZ2JHVmhjbTVwYm1kU1lYUmxMRnh1SUNBZ0lDQWdaMkZ0YldFNklISmxjSFZzYzJsdmJsTjBjbVZ1WjNSb0xGeHVJQ0FnSUNBZ1pHbHRMRnh1SUNBZ0lIMHBPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVsdWFYUnBZV3hwZW1WeklHOXdkR2x0YVhwaGRHbHZiaUJ6ZEdGMFpTQm1iM0lnYzNSbGNIZHBjMlVnYjNCMGFXMXBlbUYwYVc5dUxseHVJQ0FnS2k5Y2JpQWdjSEpwZG1GMFpTQnBibWwwYVdGc2FYcGxUM0IwYVcxcGVtRjBhVzl1S0NrZ2UxeHVJQ0FnSUM4dklFRnNaMjl5YVhSb2JTQnpkR0YwWlZ4dUlDQWdJR052Ym5OMElHaGxZV1JGYldKbFpHUnBibWNnUFNCMGFHbHpMbVZ0WW1Wa1pHbHVaenRjYmlBZ0lDQmpiMjV6ZENCMFlXbHNSVzFpWldSa2FXNW5JRDBnZEdocGN5NWxiV0psWkdScGJtYzdYRzVjYmlBZ0lDQXZMeUJKYm1sMGFXRnNhWHBsWkNCcGJpQnBibWwwYVdGc2FYcGxVMmx0Y0d4cFkybGhiRk5sZEVWdFltVmtaR2x1WnlncFhHNGdJQ0FnWTI5dWMzUWdlMmhsWVdRc0lIUmhhV3dzSUdWd2IyTm9jMUJsY2xOaGJYQnNaWDBnUFNCMGFHbHpMbTl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JrVndiMk5vY3lBOUlIUm9hWE11WjJWMFRrVndiMk5vY3lncE8xeHVJQ0FnSUdOdmJuTjBJRzVXWlhKMGFXTmxjeUE5SUhSb2FYTXVaM0poY0dndWJrTnZiSE03WEc1Y2JpQWdJQ0JqYjI1emRDQjdZU3dnWW4wZ1BTQm1hVzVrUVVKUVlYSmhiWE1vZEdocGN5NXpjSEpsWVdRc0lIUm9hWE11YldsdVJHbHpkQ2s3WEc1Y2JpQWdJQ0IwYUdsekxtRnpjMmxuYms5d2RHbHRhWHBoZEdsdmJsTjBZWFJsVUdGeVlXMWxkR1Z5Y3loN1hHNGdJQ0FnSUNCb1pXRmtSVzFpWldSa2FXNW5MRnh1SUNBZ0lDQWdkR0ZwYkVWdFltVmtaR2x1Wnl4Y2JpQWdJQ0FnSUdobFlXUXNYRzRnSUNBZ0lDQjBZV2xzTEZ4dUlDQWdJQ0FnWlhCdlkyaHpVR1Z5VTJGdGNHeGxMRnh1SUNBZ0lDQWdZU3hjYmlBZ0lDQWdJR0lzWEc0Z0lDQWdJQ0J1UlhCdlkyaHpMRnh1SUNBZ0lDQWdibFpsY25ScFkyVnpMRnh1SUNBZ0lIMHBPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVsdGNISnZkbVVnWVc0Z1pXMWlaV1JrYVc1bklIVnphVzVuSUhOMGIyTm9ZWE4wYVdNZ1ozSmhaR2xsYm5RZ1pHVnpZMlZ1ZENCMGJ5QnRhVzVwYldsNlpTQjBhR1ZjYmlBZ0lDb2dablY2ZW5rZ2MyVjBJR055YjNOeklHVnVkSEp2Y0hrZ1ltVjBkMlZsYmlCMGFHVWdNUzF6YTJWc1pYUnZibk1nYjJZZ2RHaGxJR2hwWjJnZ1pHbHRaVzV6YVc5dVlXeGNiaUFnSUNvZ1lXNWtJR3h2ZHlCa2FXMWxibk5wYjI1aGJDQm1kWHA2ZVNCemFXMXdiR2xqYVdGc0lITmxkSE11SUVsdUlIQnlZV04wYVdObElIUm9hWE1nYVhNZ1pHOXVaU0JpZVZ4dUlDQWdLaUJ6WVcxd2JHbHVaeUJsWkdkbGN5QmlZWE5sWkNCdmJpQjBhR1ZwY2lCdFpXMWlaWEp6YUdsd0lITjBjbVZ1WjNSb0lDaDNhWFJvSUhSb1pTQW9NUzF3S1NCMFpYSnRjMXh1SUNBZ0tpQmpiMjFwYm1jZ1puSnZiU0J1WldkaGRHbDJaU0J6WVcxd2JHbHVaeUJ6YVcxcGJHRnlJSFJ2SUhkdmNtUXlkbVZqS1M1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2IzQjBhVzFwZW1WTVlYbHZkWFJUZEdWd0tHNDZJRzUxYldKbGNpa2dlMXh1SUNBZ0lHTnZibk4wSUh0dmNIUnBiV2w2WVhScGIyNVRkR0YwWlgwZ1BTQjBhR2x6TzF4dUlDQWdJR052Ym5OMElIdGNiaUFnSUNBZ0lHaGxZV1FzWEc0Z0lDQWdJQ0IwWVdsc0xGeHVJQ0FnSUNBZ2FHVmhaRVZ0WW1Wa1pHbHVaeXhjYmlBZ0lDQWdJSFJoYVd4RmJXSmxaR1JwYm1jc1hHNGdJQ0FnSUNCbGNHOWphSE5RWlhKVFlXMXdiR1VzWEc0Z0lDQWdJQ0JsY0c5amFFOW1UbVY0ZEZOaGJYQnNaU3hjYmlBZ0lDQWdJR1Z3YjJOb1QyWk9aWGgwVG1WbllYUnBkbVZUWVcxd2JHVXNYRzRnSUNBZ0lDQmxjRzlqYUhOUVpYSk9aV2RoZEdsMlpWTmhiWEJzWlN4Y2JpQWdJQ0FnSUcxdmRtVlBkR2hsY2l4Y2JpQWdJQ0FnSUdsdWFYUnBZV3hCYkhCb1lTeGNiaUFnSUNBZ0lHRnNjR2hoTEZ4dUlDQWdJQ0FnWjJGdGJXRXNYRzRnSUNBZ0lDQmhMRnh1SUNBZ0lDQWdZaXhjYmlBZ0lDQWdJR1JwYlN4Y2JpQWdJQ0FnSUc1RmNHOWphSE1zWEc0Z0lDQWdJQ0J1Vm1WeWRHbGpaWE1zWEc0Z0lDQWdmU0E5SUc5d2RHbHRhWHBoZEdsdmJsTjBZWFJsTzF4dVhHNGdJQ0FnWTI5dWMzUWdZMnhwY0ZaaGJIVmxJRDBnTkM0d08xeHVYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQmxjRzlqYUhOUVpYSlRZVzF3YkdVdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQWdJR2xtSUNobGNHOWphRTltVG1WNGRGTmhiWEJzWlZ0cFhTQStJRzRwWEc0Z0lDQWdJQ0FnSUdOdmJuUnBiblZsTzF4dVhHNWNiaUFnSUNBZ0lHTnZibk4wSUdvZ1BTQm9aV0ZrVzJsZE8xeHVJQ0FnSUNBZ1kyOXVjM1FnYXlBOUlIUmhhV3hiYVYwN1hHNWNiaUFnSUNBZ0lHTnZibk4wSUdOMWNuSmxiblFnUFNCb1pXRmtSVzFpWldSa2FXNW5XMnBkTzF4dUlDQWdJQ0FnWTI5dWMzUWdiM1JvWlhJZ1BTQjBZV2xzUlcxaVpXUmthVzVuVzJ0ZE8xeHVYRzRnSUNBZ0lDQmpiMjV6ZENCa2FYTjBVM0YxWVhKbFpDQTlJSEpFYVhOMEtHTjFjbkpsYm5Rc0lHOTBhR1Z5S1R0Y2JseHVJQ0FnSUNBZ2JHVjBJR2R5WVdSRGIyVm1aaUE5SURBN1hHNGdJQ0FnSUNCcFppQW9aR2x6ZEZOeGRXRnlaV1FnUGlBd0tTQjdYRzRnSUNBZ0lDQWdJR2R5WVdSRGIyVm1aaUE5SUMweUxqQWdLaUJoSUNvZ1lpQXFJRTFoZEdndWNHOTNLR1JwYzNSVGNYVmhjbVZrTENCaUlDMGdNUzR3S1R0Y2JpQWdJQ0FnSUNBZ1ozSmhaRU52WldabUlDODlJR0VnS2lCTllYUm9MbkJ2ZHloa2FYTjBVM0YxWVhKbFpDd2dZaWtnS3lBeExqQTdYRzRnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJR1FnUFNBd095QmtJRHdnWkdsdE95QmtLeXNwSUh0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWjNKaFpFUWdQU0JqYkdsd0tHZHlZV1JEYjJWbVppQXFJQ2hqZFhKeVpXNTBXMlJkSUMwZ2IzUm9aWEpiWkYwcExDQmpiR2x3Vm1Gc2RXVXBPMXh1SUNBZ0lDQWdJQ0JqZFhKeVpXNTBXMlJkSUNzOUlHZHlZV1JFSUNvZ1lXeHdhR0U3WEc0Z0lDQWdJQ0FnSUdsbUlDaHRiM1psVDNSb1pYSXBYRzRnSUNBZ0lDQWdJQ0FnYjNSb1pYSmJaRjBnS3owZ0xXZHlZV1JFSUNvZ1lXeHdhR0U3WEc0Z0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUdWd2IyTm9UMlpPWlhoMFUyRnRjR3hsVzJsZElDczlJR1Z3YjJOb2MxQmxjbE5oYlhCc1pWdHBYVHRjYmx4dUlDQWdJQ0FnWTI5dWMzUWdiazVsWjFOaGJYQnNaWE1nUFNCTllYUm9MbVpzYjI5eUtGeHVJQ0FnSUNBZ0lDQW9iaUF0SUdWd2IyTm9UMlpPWlhoMFRtVm5ZWFJwZG1WVFlXMXdiR1ZiYVYwcElDOGdaWEJ2WTJoelVHVnlUbVZuWVhScGRtVlRZVzF3YkdWYmFWMWNiaUFnSUNBZ0lDazdYRzVjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJSEFnUFNBd095QndJRHdnYms1bFoxTmhiWEJzWlhNN0lIQXJLeWtnZTF4dUlDQWdJQ0FnSUNCamIyNXpkQ0JySUQwZ2RYUnBiSE11ZEdGMVVtRnVaRWx1ZENodVZtVnlkR2xqWlhNc0lIUm9hWE11Y21GdVpHOXRLVHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdiM1JvWlhJZ1BTQjBZV2xzUlcxaVpXUmthVzVuVzJ0ZE8xeHVYRzRnSUNBZ0lDQWdJR052Ym5OMElHUnBjM1JUY1hWaGNtVmtJRDBnY2tScGMzUW9ZM1Z5Y21WdWRDd2diM1JvWlhJcE8xeHVYRzRnSUNBZ0lDQWdJR3hsZENCbmNtRmtRMjlsWm1ZZ1BTQXdMakE3WEc0Z0lDQWdJQ0FnSUdsbUlDaGthWE4wVTNGMVlYSmxaQ0ErSURBdU1Da2dlMXh1SUNBZ0lDQWdJQ0FnSUdkeVlXUkRiMlZtWmlBOUlESXVNQ0FxSUdkaGJXMWhJQ29nWWp0Y2JpQWdJQ0FnSUNBZ0lDQm5jbUZrUTI5bFptWWdMejFjYmlBZ0lDQWdJQ0FnSUNBZ0lDZ3dMakF3TVNBcklHUnBjM1JUY1hWaGNtVmtLU0FxSUNoaElDb2dUV0YwYUM1d2IzY29aR2x6ZEZOeGRXRnlaV1FzSUdJcElDc2dNU2s3WEc0Z0lDQWdJQ0FnSUgwZ1pXeHpaU0JwWmlBb2FpQTlQVDBnYXlrZ2UxeHVJQ0FnSUNBZ0lDQWdJR052Ym5ScGJuVmxPMXh1SUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ1pDQTlJREE3SUdRZ1BDQmthVzA3SUdRckt5a2dlMXh1SUNBZ0lDQWdJQ0FnSUd4bGRDQm5jbUZrUkNBOUlEUXVNRHRjYmlBZ0lDQWdJQ0FnSUNCcFppQW9aM0poWkVOdlpXWm1JRDRnTUM0d0tWeHVJQ0FnSUNBZ0lDQWdJQ0FnWjNKaFpFUWdQU0JqYkdsd0tHZHlZV1JEYjJWbVppQXFJQ2hqZFhKeVpXNTBXMlJkSUMwZ2IzUm9aWEpiWkYwcExDQmpiR2x3Vm1Gc2RXVXBPMXh1WEc0Z0lDQWdJQ0FnSUNBZ1kzVnljbVZ1ZEZ0a1hTQXJQU0JuY21Ga1JDQXFJR0ZzY0doaE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlYRzRnSUNBZ0lDQmxjRzlqYUU5bVRtVjRkRTVsWjJGMGFYWmxVMkZ0Y0d4bFcybGRJQ3M5SUc1T1pXZFRZVzF3YkdWeklDb2daWEJ2WTJoelVHVnlUbVZuWVhScGRtVlRZVzF3YkdWYmFWMDdYRzRnSUNBZ2ZWeHVJQ0FnSUc5d2RHbHRhWHBoZEdsdmJsTjBZWFJsTG1Gc2NHaGhJRDBnYVc1cGRHbGhiRUZzY0doaElDb2dLREV1TUNBdElHNGdMeUJ1UlhCdlkyaHpLVHRjYmx4dUlDQWdJRzl3ZEdsdGFYcGhkR2x2YmxOMFlYUmxMbU4xY25KbGJuUkZjRzlqYUNBclBTQXhPMXh1SUNBZ0lISmxkSFZ5YmlCb1pXRmtSVzFpWldSa2FXNW5PMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVsdGNISnZkbVVnWVc0Z1pXMWlaV1JrYVc1bklIVnphVzVuSUhOMGIyTm9ZWE4wYVdNZ1ozSmhaR2xsYm5RZ1pHVnpZMlZ1ZENCMGJ5QnRhVzVwYldsNlpTQjBhR1ZjYmlBZ0lDb2dablY2ZW5rZ2MyVjBJR055YjNOeklHVnVkSEp2Y0hrZ1ltVjBkMlZsYmlCMGFHVWdNUzF6YTJWc1pYUnZibk1nYjJZZ2RHaGxJR2hwWjJnZ1pHbHRaVzV6YVc5dVlXeGNiaUFnSUNvZ1lXNWtJR3h2ZHlCa2FXMWxibk5wYjI1aGJDQm1kWHA2ZVNCemFXMXdiR2xqYVdGc0lITmxkSE11SUVsdUlIQnlZV04wYVdObElIUm9hWE1nYVhNZ1pHOXVaU0JpZVZ4dUlDQWdLaUJ6WVcxd2JHbHVaeUJsWkdkbGN5QmlZWE5sWkNCdmJpQjBhR1ZwY2lCdFpXMWlaWEp6YUdsd0lITjBjbVZ1WjNSb0lDaDNhWFJvSUhSb1pTQW9NUzF3S1NCMFpYSnRjMXh1SUNBZ0tpQmpiMjFwYm1jZ1puSnZiU0J1WldkaGRHbDJaU0J6WVcxd2JHbHVaeUJ6YVcxcGJHRnlJSFJ2SUhkdmNtUXlkbVZqS1M1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2IzQjBhVzFwZW1WTVlYbHZkWFJCYzNsdVl5aGNiaUFnSUNCbGNHOWphRU5oYkd4aVlXTnJPaUFvWlhCdlkyaE9kVzFpWlhJNklHNTFiV0psY2lrZ1BUNGdkbTlwWkNCOElHSnZiMnhsWVc0Z1BTQW9LU0E5UGlCMGNuVmxYRzRnSUNrNklGQnliMjFwYzJVOFltOXZiR1ZoYmo0Z2UxeHVJQ0FnSUhKbGRIVnliaUJ1WlhjZ1VISnZiV2x6WlNnb2NtVnpiMngyWlN3Z2NtVnFaV04wS1NBOVBpQjdYRzRnSUNBZ0lDQmpiMjV6ZENCemRHVndJRDBnWVhONWJtTWdLQ2tnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUh0dVJYQnZZMmh6TENCamRYSnlaVzUwUlhCdlkyaDlJRDBnZEdocGN5NXZjSFJwYldsNllYUnBiMjVUZEdGMFpUdGNiaUFnSUNBZ0lDQWdJQ0IwYUdsekxtVnRZbVZrWkdsdVp5QTlJSFJvYVhNdWIzQjBhVzFwZW1WTVlYbHZkWFJUZEdWd0tHTjFjbkpsYm5SRmNHOWphQ2s3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWlhCdlkyaERiMjF3YkdWMFpXUWdQU0IwYUdsekxtOXdkR2x0YVhwaGRHbHZibE4wWVhSbExtTjFjbkpsYm5SRmNHOWphRHRjYmlBZ0lDQWdJQ0FnSUNCamIyNXpkQ0J6YUc5MWJHUlRkRzl3SUQwZ1pYQnZZMmhEWVd4c1ltRmpheWhsY0c5amFFTnZiWEJzWlhSbFpDa2dQVDA5SUdaaGJITmxPMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR2x6Um1sdWFYTm9aV1FnUFNCbGNHOWphRU52YlhCc1pYUmxaQ0E5UFQwZ2JrVndiMk5vY3p0Y2JpQWdJQ0FnSUNBZ0lDQnBaaUFvSVhOb2IzVnNaRk4wYjNBZ0ppWWdJV2x6Um1sdWFYTm9aV1FwWEc0Z0lDQWdJQ0FnSUNBZ0lDQnpaWFJVYVcxbGIzVjBLQ2dwSUQwK0lITjBaWEFvS1N3Z01DazdYRzRnSUNBZ0lDQWdJQ0FnWld4elpWeHVJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJSEpsYzI5c2RtVW9hWE5HYVc1cGMyaGxaQ2s3WEc0Z0lDQWdJQ0FnSUgwZ1kyRjBZMmdnS0dWeWNpa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGFtVmpkQ2hsY25JcE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlPMXh1SUNBZ0lDQWdjMlYwVkdsdFpXOTFkQ2dvS1NBOVBpQnpkR1Z3S0Nrc0lEQXBPMXh1SUNBZ0lIMHBPMXh1SUNCOVhHNWNiaUFnTHlvcVhHNGdJQ0FxSUVsdGNISnZkbVVnWVc0Z1pXMWlaV1JrYVc1bklIVnphVzVuSUhOMGIyTm9ZWE4wYVdNZ1ozSmhaR2xsYm5RZ1pHVnpZMlZ1ZENCMGJ5QnRhVzVwYldsNlpTQjBhR1ZjYmlBZ0lDb2dablY2ZW5rZ2MyVjBJR055YjNOeklHVnVkSEp2Y0hrZ1ltVjBkMlZsYmlCMGFHVWdNUzF6YTJWc1pYUnZibk1nYjJZZ2RHaGxJR2hwWjJnZ1pHbHRaVzV6YVc5dVlXeGNiaUFnSUNvZ1lXNWtJR3h2ZHlCa2FXMWxibk5wYjI1aGJDQm1kWHA2ZVNCemFXMXdiR2xqYVdGc0lITmxkSE11SUVsdUlIQnlZV04wYVdObElIUm9hWE1nYVhNZ1pHOXVaU0JpZVZ4dUlDQWdLaUJ6WVcxd2JHbHVaeUJsWkdkbGN5QmlZWE5sWkNCdmJpQjBhR1ZwY2lCdFpXMWlaWEp6YUdsd0lITjBjbVZ1WjNSb0lDaDNhWFJvSUhSb1pTQW9NUzF3S1NCMFpYSnRjMXh1SUNBZ0tpQmpiMjFwYm1jZ1puSnZiU0J1WldkaGRHbDJaU0J6WVcxd2JHbHVaeUJ6YVcxcGJHRnlJSFJ2SUhkdmNtUXlkbVZqS1M1Y2JpQWdJQ292WEc0Z0lIQnlhWFpoZEdVZ2IzQjBhVzFwZW1WTVlYbHZkWFFvWEc0Z0lDQWdaWEJ2WTJoRFlXeHNZbUZqYXpvZ0tHVndiMk5vVG5WdFltVnlPaUJ1ZFcxaVpYSXBJRDArSUhadmFXUWdmQ0JpYjI5c1pXRnVJRDBnS0NrZ1BUNGdkSEoxWlZ4dUlDQXBPaUJXWldOMGIzSnpJSHRjYmlBZ0lDQnNaWFFnYVhOR2FXNXBjMmhsWkNBOUlHWmhiSE5sTzF4dUlDQWdJR3hsZENCbGJXSmxaR1JwYm1jNklGWmxZM1J2Y25NZ1BTQmJYVHRjYmlBZ0lDQjNhR2xzWlNBb0lXbHpSbWx1YVhOb1pXUXBJSHRjYmlBZ0lDQWdJR052Ym5OMElIdHVSWEJ2WTJoekxDQmpkWEp5Wlc1MFJYQnZZMmg5SUQwZ2RHaHBjeTV2Y0hScGJXbDZZWFJwYjI1VGRHRjBaVHRjYmlBZ0lDQWdJR1Z0WW1Wa1pHbHVaeUE5SUhSb2FYTXViM0IwYVcxcGVtVk1ZWGx2ZFhSVGRHVndLR04xY25KbGJuUkZjRzlqYUNrN1hHNGdJQ0FnSUNCamIyNXpkQ0JsY0c5amFFTnZiWEJzWlhSbFpDQTlJSFJvYVhNdWIzQjBhVzFwZW1GMGFXOXVVM1JoZEdVdVkzVnljbVZ1ZEVWd2IyTm9PMXh1SUNBZ0lDQWdZMjl1YzNRZ2MyaHZkV3hrVTNSdmNDQTlJR1Z3YjJOb1EyRnNiR0poWTJzb1pYQnZZMmhEYjIxd2JHVjBaV1FwSUQwOVBTQm1ZV3h6WlR0Y2JpQWdJQ0FnSUdselJtbHVhWE5vWldRZ1BTQmxjRzlqYUVOdmJYQnNaWFJsWkNBOVBUMGdia1Z3YjJOb2N5QjhmQ0J6YUc5MWJHUlRkRzl3TzF4dUlDQWdJSDFjYmlBZ0lDQnlaWFIxY200Z1pXMWlaV1JrYVc1bk8xeHVJQ0I5WEc1Y2JpQWdMeW9xWEc0Z0lDQXFJRWRsZEhNZ2RHaGxJRzUxYldKbGNpQnZaaUJsY0c5amFITWdabTl5SUc5d2RHbHRhWHBwYm1jZ2RHaGxJSEJ5YjJwbFkzUnBiMjR1WEc0Z0lDQXFJRTVQVkVVNklGUm9hWE1nYUdWMWNtbHpkR2xqSUdScFptWmxjbk1nWm5KdmJTQjBhR1VnY0hsMGFHOXVJSFpsY25OcGIyNWNiaUFnSUNvdlhHNGdJSEIxWW14cFl5Qm5aWFJPUlhCdlkyaHpLQ2tnZTF4dUlDQWdJR052Ym5OMElHZHlZWEJvSUQwZ2RHaHBjeTVuY21Gd2FEdGNibHh1SUNBZ0lHbG1JQ2gwYUdsekxtNUZjRzlqYUhNZ1BpQXdLVnh1SUNBZ0lDQWdjbVYwZFhKdUlIUm9hWE11YmtWd2IyTm9jenRjYmx4dVhHNGdJQ0FnYVdZZ0tDRm5jbUZ3YUNsY2JpQWdJQ0FnSUhKbGRIVnliaUF5TURBN1hHNWNibHh1SUNBZ0lHTnZibk4wSUd4bGJtZDBhQ0E5SUdkeVlYQm9MbTVTYjNkek8xeHVJQ0FnSUdsbUlDaHNaVzVuZEdnZ1BEMGdNalV3TUNsY2JpQWdJQ0FnSUhKbGRIVnliaUExTURBN1hHNGdJQ0FnWld4elpTQnBaaUFvYkdWdVozUm9JRHc5SURVd01EQXBYRzRnSUNBZ0lDQnlaWFIxY200Z05EQXdPMXh1SUNBZ0lHVnNjMlVnYVdZZ0tHeGxibWQwYUNBOFBTQTNOVEF3S1Z4dUlDQWdJQ0FnY21WMGRYSnVJRE13TUR0Y2JpQWdJQ0JsYkhObFhHNGdJQ0FnSUNCeVpYUjFjbTRnTWpBd08xeHVJQ0I5WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmxkV05zYVdSbFlXNG9lRG9nVm1WamRHOXlMQ0I1T2lCV1pXTjBiM0lwSUh0Y2JpQWdiR1YwSUhKbGMzVnNkQ0E5SURBN1hHNGdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnZUM1c1pXNW5kR2c3SUdrckt5bGNiaUFnSUNCeVpYTjFiSFFnS3owZ0tIaGJhVjBnTFNCNVcybGRLU0FxS2lBeU8xeHVYRzRnSUhKbGRIVnliaUJOWVhSb0xuTnhjblFvY21WemRXeDBLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHNTFiV1Z5YVdNb2VEb2diblZ0WW1WeUxDQjVPaUJ1ZFcxaVpYSXBJSHRjYmlBZ1kyOXVjM1FnY21WemRXeDBJRDBnVFdGMGFDNWhZbk1vZUNBdElIa3BPMXh1SUNCeVpYUjFjbTRnY21WemRXeDBPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1kyOXphVzVsS0hnNklGWmxZM1J2Y2l3Z2VUb2dWbVZqZEc5eUtTQjdYRzRnSUd4bGRDQnlaWE4xYkhRZ1BTQXdMakE3WEc0Z0lHeGxkQ0J1YjNKdFdDQTlJREF1TUR0Y2JpQWdiR1YwSUc1dmNtMVpJRDBnTUM0d08xeHVYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2VDNXNaVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJSEpsYzNWc2RDQXJQU0I0VzJsZElDb2dlVnRwWFR0Y2JpQWdJQ0J1YjNKdFdDQXJQU0I0VzJsZElDb3FJREk3WEc0Z0lDQWdibTl5YlZrZ0t6MGdlVnRwWFNBcUtpQXlPMXh1SUNCOVhHNWNiaUFnYVdZZ0tHNXZjbTFZSUQwOVBTQXdJQ1ltSUc1dmNtMVpJRDA5UFNBd0tWeHVJQ0FnSUhKbGRIVnliaUF3TzF4dUlDQmxiSE5sSUdsbUlDaHViM0p0V0NBOVBUMGdNQ0I4ZkNCdWIzSnRXU0E5UFQwZ01DbGNiaUFnSUNCeVpYUjFjbTRnTVM0d08xeHVJQ0JsYkhObFhHNGdJQ0FnY21WMGRYSnVJREV1TUNBdElISmxjM1ZzZENBdklFMWhkR2d1YzNGeWRDaHViM0p0V0NBcUlHNXZjbTFaS1R0Y2JuMWNibHh1THlvcVhHNGdLaUJCYmlCcGJuUmxjbVpoWTJVZ2NtVndjbVZ6Wlc1MGFXNW5JSFJvWlNCdmNIUnBiV2w2WVhScGIyNGdjM1JoZEdVZ2RISmhZMnRsWkNCaVpYUjNaV1Z1SUhOMFpYQnpJRzltWEc0Z0tpQjBhR1VnVTBkRUlHOXdkR2x0YVhwaGRHbHZibHh1SUNvdlhHNWpiR0Z6Y3lCUGNIUnBiV2w2WVhScGIyNVRkR0YwWlNCN1hHNGdJR04xY25KbGJuUkZjRzlqYUNBOUlEQTdYRzVjYmlBZ0x5OGdSR0YwWVNCMGNtRmphMlZrSUdSMWNtbHVaeUJ2Y0hScGJXbDZZWFJwYjI0Z2MzUmxjSE11WEc0Z0lHaGxZV1JGYldKbFpHUnBibWM2SUc1MWJXSmxjbHRkVzEwZ1BTQmJYVHRjYmlBZ2RHRnBiRVZ0WW1Wa1pHbHVaem9nYm5WdFltVnlXMTFiWFNBOUlGdGRPMXh1SUNCb1pXRmtPaUJ1ZFcxaVpYSmJYU0E5SUZ0ZE8xeHVJQ0IwWVdsc09pQnVkVzFpWlhKYlhTQTlJRnRkTzF4dUlDQmxjRzlqYUhOUVpYSlRZVzF3YkdVNklHNTFiV0psY2x0ZElEMGdXMTA3WEc0Z0lHVndiMk5vVDJaT1pYaDBVMkZ0Y0d4bE9pQnVkVzFpWlhKYlhTQTlJRnRkTzF4dUlDQmxjRzlqYUU5bVRtVjRkRTVsWjJGMGFYWmxVMkZ0Y0d4bE9pQnVkVzFpWlhKYlhTQTlJRnRkTzF4dUlDQmxjRzlqYUhOUVpYSk9aV2RoZEdsMlpWTmhiWEJzWlRvZ2JuVnRZbVZ5VzEwZ1BTQmJYVHRjYmlBZ2JXOTJaVTkwYUdWeUlEMGdkSEoxWlR0Y2JpQWdhVzVwZEdsaGJFRnNjR2hoSUQwZ01TNHdPMXh1SUNCaGJIQm9ZU0E5SURFdU1EdGNiaUFnWjJGdGJXRWdQU0F4TGpBN1hHNGdJR0VnUFNBeExqVTNOamswTXpRMk1ETXhNVE13TnpjN1hHNGdJR0lnUFNBd0xqZzVOVEEyTURnM056a3hNRGszTXpNN1hHNGdJR1JwYlNBOUlESTdYRzRnSUc1RmNHOWphSE1nUFNBMU1EQTdYRzRnSUc1V1pYSjBhV05sY3lBOUlEQTdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1UzUmhibVJoY21RZ1kyeGhiWEJwYm1jZ2IyWWdZU0IyWVd4MVpTQnBiblJ2SUdFZ1ptbDRaV1FnY21GdVoyVmNiaUFxTDF4dVpuVnVZM1JwYjI0Z1kyeHBjQ2g0T2lCdWRXMWlaWElzSUdOc2FYQldZV3gxWlRvZ2JuVnRZbVZ5S1NCN1hHNGdJR2xtSUNoNElENGdZMnhwY0ZaaGJIVmxLU0J5WlhSMWNtNGdZMnhwY0ZaaGJIVmxPMXh1SUNCbGJITmxJR2xtSUNoNElEd2dMV05zYVhCV1lXeDFaU2tnY21WMGRYSnVJQzFqYkdsd1ZtRnNkV1U3WEc0Z0lHVnNjMlVnY21WMGRYSnVJSGc3WEc1OVhHNWNiaThxS2x4dUlDb2dVbVZrZFdObFpDQkZkV05zYVdSbFlXNGdaR2x6ZEdGdVkyVXVYRzRnS2k5Y2JtWjFibU4wYVc5dUlISkVhWE4wS0hnNklHNTFiV0psY2x0ZExDQjVPaUJ1ZFcxaVpYSmJYU2tnZTF4dUlDQnNaWFFnY21WemRXeDBJRDBnTUM0d08xeHVJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhndWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ2NtVnpkV3gwSUNzOUlFMWhkR2d1Y0c5M0tIaGJhVjBnTFNCNVcybGRMQ0F5S1R0Y2JseHVJQ0J5WlhSMWNtNGdjbVZ6ZFd4ME8xeHVmVnh1WEc0dktpcGNiaUFxSUVacGRDQmhMQ0JpSUhCaGNtRnRjeUJtYjNJZ2RHaGxJR1JwWm1abGNtVnVkR2xoWW14bElHTjFjblpsSUhWelpXUWdhVzRnYkc5M1pYSmNiaUFxSUdScGJXVnVjMmx2Ym1Gc0lHWjFlbnA1SUhOcGJYQnNhV05wWVd3Z1kyOXRjR3hsZUNCamIyNXpkSEoxWTNScGIyNHVJRmRsSUhkaGJuUWdkR2hsWEc0Z0tpQnpiVzl2ZEdnZ1kzVnlkbVVnS0daeWIyMGdZU0J3Y21VdFpHVm1hVzVsWkNCbVlXMXBiSGtnZDJsMGFDQnphVzF3YkdVZ1ozSmhaR2xsYm5RcElIUm9ZWFJjYmlBcUlHSmxjM1FnYldGMFkyaGxjeUJoYmlCdlptWnpaWFFnWlhod2IyNWxiblJwWVd3Z1pHVmpZWGt1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQm1hVzVrUVVKUVlYSmhiWE1vYzNCeVpXRmtPaUJ1ZFcxaVpYSXNJRzFwYmtScGMzUTZJRzUxYldKbGNpa2dlMXh1SUNCamIyNXpkQ0JqZFhKMlpTQTlJQ2hiWVN3Z1lsMDZJRzUxYldKbGNsdGRLU0E5UGlBb2VEb2diblZ0WW1WeUtTQTlQaUI3WEc0Z0lDQWdjbVYwZFhKdUlERXVNQ0F2SUNneExqQWdLeUJoSUNvZ2VDQXFLaUFvTWlBcUlHSXBLVHRjYmlBZ2ZUdGNibHh1SUNCamIyNXpkQ0I0ZGlBOUlIVjBhV3h6WEc0Z0lDQWdMbXhwYm1WaGNpZ3dMQ0J6Y0hKbFlXUWdLaUF6TENBek1EQXBYRzRnSUNBZ0xtMWhjQ2dvZG1Gc0tTQTlQaUFvZG1Gc0lEd2diV2x1UkdsemRDQS9JREV1TUNBNklIWmhiQ2twTzF4dVhHNGdJR052Ym5OMElIbDJJRDBnZFhScGJITXVlbVZ5YjNNb2VIWXViR1Z1WjNSb0tTNXRZWEFvS0haaGJDd2dhVzVrWlhncElEMCtJSHRjYmlBZ0lDQmpiMjV6ZENCbmRHVWdQU0I0ZGx0cGJtUmxlRjBnUGowZ2JXbHVSR2x6ZER0Y2JpQWdJQ0J5WlhSMWNtNGdaM1JsSUQ4Z1RXRjBhQzVsZUhBb0xTaDRkbHRwYm1SbGVGMGdMU0J0YVc1RWFYTjBLU0F2SUhOd2NtVmhaQ2tnT2lCMllXdzdYRzRnSUgwcE8xeHVYRzRnSUdOdmJuTjBJR2x1YVhScFlXeFdZV3gxWlhNZ1BTQmJNQzQxTENBd0xqVmRPMXh1SUNCamIyNXpkQ0JrWVhSaElEMGdlM2c2SUhoMkxDQjVPaUI1ZG4wN1hHNWNiaUFnTHk4Z1JHVm1ZWFZzZENCdmNIUnBiMjV6SUdadmNpQjBhR1VnWVd4bmIzSnBkR2h0SUNobWNtOXRJR2RwZEdoMVlpQmxlR0Z0Y0d4bEtWeHVJQ0JqYjI1emRDQnZjSFJwYjI1eklEMGdlMXh1SUNBZ0lHUmhiWEJwYm1jNklERXVOU3hjYmlBZ0lDQnBibWwwYVdGc1ZtRnNkV1Z6TEZ4dUlDQWdJR2R5WVdScFpXNTBSR2xtWm1WeVpXNWpaVG9nTVRCbExUSXNYRzRnSUNBZ2JXRjRTWFJsY21GMGFXOXVjem9nTVRBd0xGeHVJQ0FnSUdWeWNtOXlWRzlzWlhKaGJtTmxPaUF4TUdVdE15eGNiaUFnZlR0Y2JseHVJQ0F2THlCbGMyeHBiblF0WkdsellXSnNaUzF1WlhoMExXeHBibVVnYm1WM0xXTmhjRnh1SUNCamIyNXpkQ0I3Y0dGeVlXMWxkR1Z5Vm1Gc2RXVnpmU0E5SUV4TktHUmhkR0VzSUdOMWNuWmxMQ0J2Y0hScGIyNXpLVHRjYmlBZ1kyOXVjM1FnVzJFc0lHSmRJRDBnY0dGeVlXMWxkR1Z5Vm1Gc2RXVnpJR0Z6SUc1MWJXSmxjbHRkTzF4dUlDQnlaWFIxY200Z2UyRXNJR0o5TzF4dWZWeHVYRzR2S2lwY2JpQXFJRlZ1WkdWeUlIUm9aU0JoYzNOMWJYQjBhVzl1SUc5bUlHTmhkR1ZuYjNKcFkyRnNJR1JwYzNSaGJtTmxJR1p2Y2lCMGFHVWdhVzUwWlhKelpXTjBhVzVuWEc0Z0tpQnphVzF3YkdsamFXRnNJSE5sZENCd1pYSm1iM0p0SUdFZ1ptRnpkQ0JwYm5SbGNuTmxZM1JwYjI0dVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJtWVhOMFNXNTBaWEp6WldOMGFXOXVLRnh1SUNCbmNtRndhRG9nYldGMGNtbDRMbE53WVhKelpVMWhkSEpwZUN4Y2JpQWdkR0Z5WjJWME9pQnVkVzFpWlhKYlhTeGNiaUFnZFc1cmJtOTNia1JwYzNRZ1BTQXhMakFzWEc0Z0lHWmhja1JwYzNRZ1BTQTFMakJjYmlrZ2UxeHVJQ0J5WlhSMWNtNGdaM0poY0dndWJXRndLQ2gyWVd4MVpTd2djbTkzTENCamIyd3BJRDArSUh0Y2JpQWdJQ0JwWmlBb2RHRnlaMlYwVzNKdmQxMGdQVDA5SUMweElIeDhJSFJoY21kbGRGdGpiMnhkSUQwOVBTQXRNU2xjYmlBZ0lDQWdJSEpsZEhWeWJpQjJZV3gxWlNBcUlFMWhkR2d1Wlhod0tDMTFibXR1YjNkdVJHbHpkQ2s3WEc0Z0lDQWdaV3h6WlNCcFppQW9kR0Z5WjJWMFczSnZkMTBnSVQwOUlIUmhjbWRsZEZ0amIyeGRLVnh1SUNBZ0lDQWdjbVYwZFhKdUlIWmhiSFZsSUNvZ1RXRjBhQzVsZUhBb0xXWmhja1JwYzNRcE8xeHVJQ0FnSUdWc2MyVmNiaUFnSUNBZ0lISmxkSFZ5YmlCMllXeDFaVHRjYmlBZ2ZTazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1VtVnpaWFFnZEdobElHeHZZMkZzSUdOdmJtNWxZM1JwZG1sMGVTQnlaWEYxYVhKbGJXVnVkQ0F0TFNCbFlXTm9JR1JoZEdFZ2MyRnRjR3hsSUhOb2IzVnNaRnh1SUNvZ2FHRjJaU0JqYjIxd2JHVjBaU0JqYjI1bWFXUmxibU5sSUdsdUlHRjBJR3hsWVhOMElHOXVaU0F4TFhOcGJYQnNaWGdnYVc0Z2RHaGxJSE5wYlhCc2FXTnBZV3dnYzJWMExseHVJQ29nVjJVZ1kyRnVJR1Z1Wm05eVkyVWdkR2hwY3lCaWVTQnNiMk5oYkd4NUlISmxjMk5oYkdsdVp5QmpiMjVtYVdSbGJtTmxjeXdnWVc1a0lIUm9aVzRnY21WdFpYSm5hVzVuSUhSb1pWeHVJQ29nWkdsbVptVnlaVzUwSUd4dlkyRnNJSE5wYlhCc2FXTnBZV3dnYzJWMGN5QjBiMmRsZEdobGNpNWNiaUFxTDF4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUhKbGMyVjBURzlqWVd4RGIyNXVaV04wYVhacGRIa29jMmx0Y0d4cFkybGhiRk5sZERvZ2JXRjBjbWw0TGxOd1lYSnpaVTFoZEhKcGVDa2dlMXh1SUNCemFXMXdiR2xqYVdGc1UyVjBJRDBnYldGMGNtbDRMbTV2Y20xaGJHbDZaU2h6YVcxd2JHbGphV0ZzVTJWMExDQnRZWFJ5YVhndVRtOXliVlI1Y0dVdWJXRjRLVHRjYmlBZ1kyOXVjM1FnZEhKaGJuTndiM05sSUQwZ2JXRjBjbWw0TG5SeVlXNXpjRzl6WlNoemFXMXdiR2xqYVdGc1UyVjBLVHRjYmlBZ1kyOXVjM1FnY0hKdlpFMWhkSEpwZUNBOUlHMWhkSEpwZUM1d1lXbHlkMmx6WlUxMWJIUnBjR3g1S0hSeVlXNXpjRzl6WlN3Z2MybHRjR3hwWTJsaGJGTmxkQ2s3WEc0Z0lITnBiWEJzYVdOcFlXeFRaWFFnUFNCdFlYUnlhWGd1WVdSa0tGeHVJQ0FnSUhOcGJYQnNhV05wWVd4VFpYUXNYRzRnSUNBZ2JXRjBjbWw0TG5OMVluUnlZV04wS0hSeVlXNXpjRzl6WlN3Z2NISnZaRTFoZEhKcGVDbGNiaUFnS1R0Y2JpQWdjbVYwZFhKdUlHMWhkSEpwZUM1bGJHbHRhVzVoZEdWYVpYSnZjeWh6YVcxd2JHbGphV0ZzVTJWMEtUdGNibjFjYmx4dUx5b3FYRzRnS2lCSGFYWmxiaUJwYm1ScFkyVnpJR0Z1WkNCM1pXbG5hSFJ6SUdGdVpDQmhiaUJ2Y21sbmFXNWhiQ0JsYldKbFpHUnBibWR6WEc0Z0tpQnBibWwwYVdGc2FYcGxJSFJvWlNCd2IzTnBkR2x2Ym5NZ2IyWWdibVYzSUhCdmFXNTBjeUJ5Wld4aGRHbDJaU0IwYnlCMGFHVmNiaUFxSUdsdVpHbGpaWE1nWVc1a0lIZGxhV2RvZEhNZ0tHOW1JSFJvWldseUlHNWxhV2RvWW05eWN5QnBiaUIwYUdVZ2MyOTFjbU5sSUdSaGRHRXBMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2FXNXBkRlJ5WVc1elptOXliU2hjYmlBZ2FXNWthV05sY3pvZ2JuVnRZbVZ5VzExYlhTeGNiaUFnZDJWcFoyaDBjem9nYm5WdFltVnlXMTFiWFN4Y2JpQWdaVzFpWldSa2FXNW5PaUJXWldOMGIzSnpYRzRwSUh0Y2JpQWdZMjl1YzNRZ2NtVnpkV3gwSUQwZ2RYUnBiSE5jYmlBZ0lDQXVlbVZ5YjNNb2FXNWthV05sY3k1c1pXNW5kR2dwWEc0Z0lDQWdMbTFoY0Nnb1gzb3BJRDArSUhWMGFXeHpMbnBsY205ektHVnRZbVZrWkdsdVoxc3dYUzVzWlc1bmRHZ3BLVHRjYmx4dUlDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR2x1WkdsalpYTXViR1Z1WjNSb095QnBLeXNwSUh0Y2JpQWdJQ0JtYjNJZ0tHeGxkQ0JxSUQwZ01Ec2dhaUE4SUdsdVpHbGpaWE5iTUYwdWJHVnVaM1JvT3lCcUt5c3BJSHRjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJR1FnUFNBd095QmtJRHdnWlcxaVpXUmthVzVuV3pCZExteGxibWQwYURzZ1pDc3JLU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJR0VnUFNCcGJtUnBZMlZ6VzJsZFcycGRPMXh1SUNBZ0lDQWdJQ0J5WlhOMWJIUmJhVjFiWkYwZ0t6MGdkMlZwWjJoMGMxdHBYVnRxWFNBcUlHVnRZbVZrWkdsdVoxdGhYVnRrWFR0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc0Z0lIMWNiaUFnY21WMGRYSnVJSEpsYzNWc2REdGNibjFjYmlKZGZRPT0iLCIvKipcbiAqIEBsaWNlbnNlXG4gKlxuICogQ29weXJpZ2h0IDIwMTkgR29vZ2xlIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqL1xuLyoqXG4gKiBUaGlzIGlzIGEgSmF2YVNjcmlwdCByZWltcGxlbWVudGF0aW9uIG9mIFVNQVAgKG9yaWdpbmFsIGxpY2Vuc2UgYmVsb3cpLCBmcm9tXG4gKiB0aGUgcHl0aG9uIGltcGxlbWVudGF0aW9uIGZvdW5kIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9sbWNpbm5lcy91bWFwLlxuICpcbiAqIEBhdXRob3IgYW5keWNvZW5lbkBnb29nbGUuY29tIChBbmR5IENvZW5lbilcbiAqL1xuLyoqXG4gKiBAbGljZW5zZVxuICogQlNEIDMtQ2xhdXNlIExpY2Vuc2VcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTcsIExlbGFuZCBNY0lubmVzXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dFxuICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6XG4gKlxuICogKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsIHRoaXNcbiAqICAgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuXG4gKlxuICogKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UsXG4gKiAgIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb25cbiAqICAgYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uXG4gKlxuICogKiBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMgb2YgaXRzXG4gKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tXG4gKiAgIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uXG4gKlxuICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUyBcIkFTIElTXCJcbiAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEVcbiAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRVxuICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBIT0xERVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRVxuICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUxcbiAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SXG4gKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUlxuICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSxcbiAqIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFXG4gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLlxuICovXG5pbXBvcnQgKiBhcyBoZWFwIGZyb20gJy4vaGVhcCc7XG5pbXBvcnQgKiBhcyBtYXRyaXggZnJvbSAnLi9tYXRyaXgnO1xuaW1wb3J0ICogYXMgdHJlZSBmcm9tICcuL3RyZWUnO1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscyc7XG4vKipcbiAqIENyZWF0ZSBhIHZlcnNpb24gb2YgbmVhcmVzdCBuZWlnaGJvciBkZXNjZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZU5ORGVzY2VudChkaXN0YW5jZUZuLCByYW5kb20pIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gbk5EZXNjZW50KGRhdGEsIGxlYWZBcnJheSwgbk5laWdoYm9ycywgbkl0ZXJzID0gMTAsIG1heENhbmRpZGF0ZXMgPSA1MCwgZGVsdGEgPSAwLjAwMSwgcmhvID0gMC41LCBycFRyZWVJbml0ID0gdHJ1ZSkge1xuICAgICAgICBjb25zdCBuVmVydGljZXMgPSBkYXRhLmxlbmd0aDtcbiAgICAgICAgY29uc3QgY3VycmVudEdyYXBoID0gaGVhcC5tYWtlSGVhcChkYXRhLmxlbmd0aCwgbk5laWdoYm9ycyk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZGF0YS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgaW5kaWNlcyA9IGhlYXAucmVqZWN0aW9uU2FtcGxlKG5OZWlnaGJvcnMsIGRhdGEubGVuZ3RoLCByYW5kb20pO1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBpbmRpY2VzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZCA9IGRpc3RhbmNlRm4oZGF0YVtpXSwgZGF0YVtpbmRpY2VzW2pdXSk7XG4gICAgICAgICAgICAgICAgaGVhcC5oZWFwUHVzaChjdXJyZW50R3JhcGgsIGksIGQsIGluZGljZXNbal0sIDEpO1xuICAgICAgICAgICAgICAgIGhlYXAuaGVhcFB1c2goY3VycmVudEdyYXBoLCBpbmRpY2VzW2pdLCBkLCBpLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAocnBUcmVlSW5pdCkge1xuICAgICAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBsZWFmQXJyYXkubGVuZ3RoOyBuKyspIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlYWZBcnJheVtuXS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICBpZiAobGVhZkFycmF5W25dW2ldIDwgMClcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gaSArIDE7IGogPCBsZWFmQXJyYXlbbl0ubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsZWFmQXJyYXlbbl1bal0gPCAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZCA9IGRpc3RhbmNlRm4oZGF0YVtsZWFmQXJyYXlbbl1baV1dLCBkYXRhW2xlYWZBcnJheVtuXVtqXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVhcC5oZWFwUHVzaChjdXJyZW50R3JhcGgsIGxlYWZBcnJheVtuXVtpXSwgZCwgbGVhZkFycmF5W25dW2pdLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYXAuaGVhcFB1c2goY3VycmVudEdyYXBoLCBsZWFmQXJyYXlbbl1bal0sIGQsIGxlYWZBcnJheVtuXVtpXSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChsZXQgbiA9IDA7IG4gPCBuSXRlcnM7IG4rKykge1xuICAgICAgICAgICAgY29uc3QgY2FuZGlkYXRlTmVpZ2hib3JzID0gaGVhcC5idWlsZENhbmRpZGF0ZXMoY3VycmVudEdyYXBoLCBuVmVydGljZXMsIG5OZWlnaGJvcnMsIG1heENhbmRpZGF0ZXMsIHJhbmRvbSk7XG4gICAgICAgICAgICBsZXQgYyA9IDA7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5WZXJ0aWNlczsgaSsrKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBtYXhDYW5kaWRhdGVzOyBqKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcCA9IE1hdGguZmxvb3IoY2FuZGlkYXRlTmVpZ2hib3JzWzBdW2ldW2pdKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHAgPCAwIHx8IHV0aWxzLnRhdVJhbmQocmFuZG9tKSA8IHJobylcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBrID0gMDsgayA8IG1heENhbmRpZGF0ZXM7IGsrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcSA9IE1hdGguZmxvb3IoY2FuZGlkYXRlTmVpZ2hib3JzWzBdW2ldW2tdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNqID0gY2FuZGlkYXRlTmVpZ2hib3JzWzJdW2ldW2pdO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2sgPSBjYW5kaWRhdGVOZWlnaGJvcnNbMl1baV1ba107XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocSA8IDAgfHwgKCFjaiAmJiAhY2spKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZCA9IGRpc3RhbmNlRm4oZGF0YVtwXSwgZGF0YVtxXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjICs9IGhlYXAuaGVhcFB1c2goY3VycmVudEdyYXBoLCBwLCBkLCBxLCAxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGMgKz0gaGVhcC5oZWFwUHVzaChjdXJyZW50R3JhcGgsIHEsIGQsIHAsIDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGMgPD0gZGVsdGEgKiBuTmVpZ2hib3JzICogZGF0YS5sZW5ndGgpXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc29ydGVkID0gaGVhcC5kZWhlYXBTb3J0KGN1cnJlbnRHcmFwaCk7XG4gICAgICAgIHJldHVybiBzb3J0ZWQ7XG4gICAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBtYWtlSW5pdGlhbGl6YXRpb25zKGRpc3RhbmNlRm4pIHtcbiAgICBmdW5jdGlvbiBpbml0RnJvbVJhbmRvbShuTmVpZ2hib3JzLCBkYXRhLCBxdWVyeVBvaW50cywgX2hlYXAsIHJhbmRvbSkge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHF1ZXJ5UG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRpY2VzID0gdXRpbHMucmVqZWN0aW9uU2FtcGxlKG5OZWlnaGJvcnMsIGRhdGEubGVuZ3RoLCByYW5kb20pO1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBpbmRpY2VzLmxlbmd0aDsgaisrKSB7XG4gICAgICAgICAgICAgICAgaWYgKGluZGljZXNbal0gPCAwKVxuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICBjb25zdCBkID0gZGlzdGFuY2VGbihkYXRhW2luZGljZXNbal1dLCBxdWVyeVBvaW50c1tpXSk7XG4gICAgICAgICAgICAgICAgaGVhcC5oZWFwUHVzaChfaGVhcCwgaSwgZCwgaW5kaWNlc1tqXSwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZnVuY3Rpb24gaW5pdEZyb21UcmVlKF90cmVlLCBkYXRhLCBxdWVyeVBvaW50cywgX2hlYXAsIHJhbmRvbSkge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHF1ZXJ5UG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRpY2VzID0gdHJlZS5zZWFyY2hGbGF0VHJlZShxdWVyeVBvaW50c1tpXSwgX3RyZWUsIHJhbmRvbSk7XG4gICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGluZGljZXMubGVuZ3RoOyBqKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoaW5kaWNlc1tqXSA8IDApXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICBjb25zdCBkID0gZGlzdGFuY2VGbihkYXRhW2luZGljZXNbal1dLCBxdWVyeVBvaW50c1tpXSk7XG4gICAgICAgICAgICAgICAgaGVhcC5oZWFwUHVzaChfaGVhcCwgaSwgZCwgaW5kaWNlc1tqXSwgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICByZXR1cm4geyBpbml0RnJvbVJhbmRvbSwgaW5pdEZyb21UcmVlIH07XG59XG5leHBvcnQgZnVuY3Rpb24gbWFrZUluaXRpYWxpemVkTk5TZWFyY2goZGlzdGFuY2VGbikge1xuICAgIHJldHVybiBmdW5jdGlvbiBublNlYXJjaEZuKGRhdGEsIGdyYXBoLCBpbml0aWFsaXphdGlvbiwgcXVlcnlQb2ludHMpIHtcbiAgICAgICAgY29uc3QgeyBpbmRpY2VzLCBpbmRwdHIgfSA9IG1hdHJpeC5nZXRDU1IoZ3JhcGgpO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHF1ZXJ5UG9pbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0cmllZCA9IG5ldyBTZXQoaW5pdGlhbGl6YXRpb25bMF1baV0pO1xuICAgICAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgICAgICAvLyBGaW5kIHNtYWxsZXN0IGZsYWdnZWQgdmVydGV4XG4gICAgICAgICAgICAgICAgY29uc3QgdmVydGV4ID0gaGVhcC5zbWFsbGVzdEZsYWdnZWQoaW5pdGlhbGl6YXRpb24sIGkpO1xuICAgICAgICAgICAgICAgIGlmICh2ZXJ0ZXggPT09IC0xKVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjb25zdCBjYW5kaWRhdGVzID0gaW5kaWNlcy5zbGljZShpbmRwdHJbdmVydGV4XSwgaW5kcHRyW3ZlcnRleCArIDFdKTtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGNhbmRpZGF0ZSBvZiBjYW5kaWRhdGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjYW5kaWRhdGUgPT09IHZlcnRleCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgY2FuZGlkYXRlID09PSAtMSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJpZWQuaGFzKGNhbmRpZGF0ZSkpXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZCA9IGRpc3RhbmNlRm4oZGF0YVtjYW5kaWRhdGVdLCBxdWVyeVBvaW50c1tpXSk7XG4gICAgICAgICAgICAgICAgICAgIGhlYXAudW5jaGVja2VkSGVhcFB1c2goaW5pdGlhbGl6YXRpb24sIGksIGQsIGNhbmRpZGF0ZSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIHRyaWVkLmFkZChjYW5kaWRhdGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaW5pdGlhbGl6YXRpb247XG4gICAgfTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXplU2VhcmNoKGZvcmVzdCwgZGF0YSwgcXVlcnlQb2ludHMsIG5OZWlnaGJvcnMsIGluaXRGcm9tUmFuZG9tLCBpbml0RnJvbVRyZWUsIHJhbmRvbSkge1xuICAgIGNvbnN0IHJlc3VsdHMgPSBoZWFwLm1ha2VIZWFwKHF1ZXJ5UG9pbnRzLmxlbmd0aCwgbk5laWdoYm9ycyk7XG4gICAgaW5pdEZyb21SYW5kb20obk5laWdoYm9ycywgZGF0YSwgcXVlcnlQb2ludHMsIHJlc3VsdHMsIHJhbmRvbSk7XG4gICAgaWYgKGZvcmVzdCkge1xuICAgICAgICBmb3IgKGNvbnN0IHRyZWUgb2YgZm9yZXN0KVxuICAgICAgICAgICAgaW5pdEZyb21UcmVlKHRyZWUsIGRhdGEsIHF1ZXJ5UG9pbnRzLCByZXN1bHRzLCByYW5kb20pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0cztcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWJtNWZaR1Z6WTJWdWRDNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW01dVgyUmxjMk5sYm5RdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUU3T3pzN096czdPenM3T3pzN096czdPMGRCYVVKSE8wRkJSVWc3T3pzN08wZEJTMGM3UVVGRlNEczdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenRIUVN0Q1J6dEJRVVZJTEU5QlFVOHNTMEZCU3l4SlFVRkpMRTFCUVUwc1VVRkJVU3hEUVVGRE8wRkJReTlDTEU5QlFVOHNTMEZCU3l4TlFVRk5MRTFCUVUwc1ZVRkJWU3hEUVVGRE8wRkJRMjVETEU5QlFVOHNTMEZCU3l4SlFVRkpMRTFCUVUwc1VVRkJVU3hEUVVGRE8wRkJReTlDTEU5QlFVOHNTMEZCU3l4TFFVRkxMRTFCUVUwc1UwRkJVeXhEUVVGRE8wRkJSMnBET3p0SFFVVkhPMEZCUTBnc1RVRkJUU3hWUVVGVkxHRkJRV0VzUTBGQlF5eFZRVUZ6UWl4RlFVRkZMRTFCUVdkQ08wbEJRM0JGTEU5QlFVOHNVMEZCVXl4VFFVRlRMRU5CUTNaQ0xFbEJRVmtzUlVGRFdpeFRRVUZyUWl4RlFVTnNRaXhWUVVGclFpeEZRVU5zUWl4TlFVRk5MRWRCUVVjc1JVRkJSU3hGUVVOWUxHRkJRV0VzUjBGQlJ5eEZRVUZGTEVWQlEyeENMRXRCUVVzc1IwRkJSeXhMUVVGTExFVkJRMklzUjBGQlJ5eEhRVUZITEVkQlFVY3NSVUZEVkN4VlFVRlZMRWRCUVVjc1NVRkJTVHRSUVVWcVFpeE5RVUZOTEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRE8xRkJRemxDTEUxQlFVMHNXVUZCV1N4SFFVRkhMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNSVUZCUlN4VlFVRlZMRU5CUVVNc1EwRkJRenRSUVVVMVJDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVOd1F5eE5RVUZOTEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNc1pVRkJaU3hEUVVGRExGVkJRVlVzUlVGQlJTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZMRTFCUVUwc1EwRkJReXhEUVVGRE8xbEJRM1JGTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yZENRVU4yUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhWUVVGVkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVWb1JDeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRmxCUVZrc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dG5Ra0ZEYWtRc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eFpRVUZaTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1lVRkRiRVE3VTBGRFJqdFJRVU5FTEVsQlFVa3NWVUZCVlN4RlFVRkZPMWxCUTJRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRk5CUVZNc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdaMEpCUTNwRExFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yOUNRVU0xUXl4SlFVRkpMRk5CUVZNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRPM2RDUVVOeVFpeE5RVUZOTzI5Q1FVVlNMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1UwRkJVeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHQzUWtGRGFFUXNTVUZCU1N4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXpzMFFrRkRja0lzVFVGQlRUdDNRa0ZGVWl4TlFVRk5MRU5CUVVNc1IwRkJSeXhWUVVGVkxFTkJRVU1zU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPM2RDUVVOdVJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRmxCUVZrc1JVRkJSU3hUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxGTkJRVk1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dDNRa0ZEY0VVc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eFpRVUZaTEVWQlFVVXNVMEZCVXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN2NVSkJRM0pGTzJsQ1FVTkdPMkZCUTBZN1UwRkRSanRSUVVWRUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZETDBJc1RVRkJUU3hyUWtGQmEwSXNSMEZCUnl4SlFVRkpMRU5CUVVNc1pVRkJaU3hEUVVNM1F5eFpRVUZaTEVWQlExb3NVMEZCVXl4RlFVTlVMRlZCUVZVc1JVRkRWaXhoUVVGaExFVkJRMklzVFVGQlRTeERRVU5RTEVOQlFVTTdXVUZGUml4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRFZpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVTBGQlV5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMmRDUVVOc1F5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzWVVGQllTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMjlDUVVOMFF5eE5RVUZOTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN2IwSkJRMnhFTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1NVRkJTU3hMUVVGTExFTkJRVU1zVDBGQlR5eERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRWRCUVVjN2QwSkJRM1JETEZOQlFWTTdiMEpCUlZnc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMR0ZCUVdFc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdDNRa0ZEZEVNc1RVRkJUU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4clFrRkJhMElzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzNkQ1FVTnNSQ3hOUVVGTkxFVkJRVVVzUjBGQlJ5eHJRa0ZCYTBJc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenQzUWtGRGRrTXNUVUZCVFN4RlFVRkZMRWRCUVVjc2EwSkJRV3RDTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdkMEpCUTNaRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUlVGQlJTeERRVUZET3pSQ1FVTjJRaXhUUVVGVE8zZENRVWRZTEUxQlFVMHNRMEZCUXl4SFFVRkhMRlZCUVZVc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03ZDBKQlEzWkRMRU5CUVVNc1NVRkJTU3hKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0M1FrRkROME1zUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1dVRkJXU3hGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8zRkNRVU01UXp0cFFrRkRSanRoUVVOR08xbEJRMFFzU1VGQlNTeERRVUZETEVsQlFVa3NTMEZCU3l4SFFVRkhMRlZCUVZVc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRUdG5Ra0ZEZGtNc1RVRkJUVHRUUVVOVU8xRkJRMFFzVFVGQlRTeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRlZCUVZVc1EwRkJReXhaUVVGWkxFTkJRVU1zUTBGQlF6dFJRVU0zUXl4UFFVRlBMRTFCUVUwc1EwRkJRenRKUVVOb1FpeERRVUZETEVOQlFVTTdRVUZEU2l4RFFVRkRPMEZCYTBKRUxFMUJRVTBzVlVGQlZTeHRRa0ZCYlVJc1EwRkJReXhWUVVGelFqdEpRVU40UkN4VFFVRlRMR05CUVdNc1EwRkRja0lzVlVGQmEwSXNSVUZEYkVJc1NVRkJXU3hGUVVOYUxGZEJRVzFDTEVWQlEyNUNMRXRCUVdkQ0xFVkJRMmhDTEUxQlFXZENPMUZCUldoQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhYUVVGWExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXpORExFMUJRVTBzVDBGQlR5eEhRVUZITEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNUVUZCVFN4RFFVRkRMRU5CUVVNN1dVRkRka1VzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFOUJRVThzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1owSkJRM1pETEVsQlFVa3NUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU03YjBKQlEyaENMRk5CUVZNN1owSkJSVmdzVFVGQlRTeERRVUZETEVkQlFVY3NWVUZCVlN4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4WFFVRlhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dG5Ra0ZEZGtRc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eExRVUZMTEVWQlFVVXNRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1lVRkRNME03VTBGRFJqdEpRVU5JTEVOQlFVTTdTVUZGUkN4VFFVRlRMRmxCUVZrc1EwRkRia0lzUzBGQmIwSXNSVUZEY0VJc1NVRkJXU3hGUVVOYUxGZEJRVzFDTEVWQlEyNUNMRXRCUVdkQ0xFVkJRMmhDTEUxQlFXZENPMUZCUldoQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhYUVVGWExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXpORExFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1YwRkJWeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEV0QlFVc3NSVUZCUlN4TlFVRk5MRU5CUVVNc1EwRkJRenRaUVVWdVJTeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzVDBGQlR5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRuUWtGRGRrTXNTVUZCU1N4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF6dHZRa0ZEYUVJc1QwRkJUenRuUWtGRlZDeE5RVUZOTEVOQlFVTXNSMEZCUnl4VlFVRlZMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRmRCUVZjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTjJSQ3hKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NSVUZCUlN4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRoUVVNelF6dFRRVU5HTzFGQlEwUXNUMEZCVHp0SlFVTlVMRU5CUVVNN1NVRkZSQ3hQUVVGUExFVkJRVU1zWTBGQll5eEZRVUZGTEZsQlFWa3NSVUZCUXl4RFFVRkRPMEZCUTNoRExFTkJRVU03UVVGVFJDeE5RVUZOTEZWQlFWVXNkVUpCUVhWQ0xFTkJRVU1zVlVGQmMwSTdTVUZETlVRc1QwRkJUeXhUUVVGVExGVkJRVlVzUTBGRGVFSXNTVUZCV1N4RlFVTmFMRXRCUVRCQ0xFVkJRekZDTEdOQlFYbENMRVZCUTNwQ0xGZEJRVzFDTzFGQlJXNUNMRTFCUVUwc1JVRkJReXhQUVVGUExFVkJRVVVzVFVGQlRTeEZRVUZETEVkQlFVY3NUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFJRVVV2UXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NWMEZCVnl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU16UXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhKUVVGSkxFZEJRVWNzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU0xUXl4UFFVRlBMRWxCUVVrc1JVRkJSVHRuUWtGRFdDd3JRa0ZCSzBJN1owSkJReTlDTEUxQlFVMHNUVUZCVFN4SFFVRkhMRWxCUVVrc1EwRkJReXhsUVVGbExFTkJRVU1zWTBGQll5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVWMlJDeEpRVUZKTEUxQlFVMHNTMEZCU3l4RFFVRkRMRU5CUVVNN2IwSkJRMllzVFVGQlRUdG5Ra0ZGVWl4TlFVRk5MRlZCUVZVc1IwRkJSeXhQUVVGUExFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4TlFVRk5MRU5CUVVNc1JVRkJSU3hOUVVGTkxFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1owSkJRM0pGTEV0QlFVc3NUVUZCVFN4VFFVRlRMRWxCUVVrc1ZVRkJWU3hGUVVGRk8yOUNRVU5zUXl4SlFVTkZMRk5CUVZNc1MwRkJTeXhOUVVGTk8zZENRVU53UWl4VFFVRlRMRXRCUVVzc1EwRkJReXhEUVVGRE8zZENRVU5vUWl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExGTkJRVk1zUTBGQlF6dDNRa0ZGY0VJc1UwRkJVenR2UWtGRldDeE5RVUZOTEVOQlFVTXNSMEZCUnl4VlFVRlZMRU5CUVVNc1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF5eEZRVUZGTEZkQlFWY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yOUNRVU4wUkN4SlFVRkpMRU5CUVVNc2FVSkJRV2xDTEVOQlFVTXNZMEZCWXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzVTBGQlV5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMjlDUVVNelJDeExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRE8ybENRVU4wUWp0aFFVTkdPMU5CUTBZN1VVRkRSQ3hQUVVGUExHTkJRV01zUTBGQlF6dEpRVU40UWl4RFFVRkRMRU5CUVVNN1FVRkRTaXhEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdkQ1FVRm5RaXhEUVVNNVFpeE5RVUYxUWl4RlFVTjJRaXhKUVVGWkxFVkJRMW9zVjBGQmJVSXNSVUZEYmtJc1ZVRkJhMElzUlVGRGJFSXNZMEZCWjBNc1JVRkRhRU1zV1VGQk5FSXNSVUZETlVJc1RVRkJaMEk3U1VGRmFFSXNUVUZCVFN4UFFVRlBMRWRCUVVjc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eFhRVUZYTEVOQlFVTXNUVUZCVFN4RlFVRkZMRlZCUVZVc1EwRkJReXhEUVVGRE8wbEJRemxFTEdOQlFXTXNRMEZCUXl4VlFVRlZMRVZCUVVVc1NVRkJTU3hGUVVGRkxGZEJRVmNzUlVGQlJTeFBRVUZQTEVWQlFVVXNUVUZCVFN4RFFVRkRMRU5CUVVNN1NVRkRMMFFzU1VGQlNTeE5RVUZOTEVWQlFVVTdVVUZEVml4TFFVRkxMRTFCUVUwc1NVRkJTU3hKUVVGSkxFMUJRVTA3V1VGRGRrSXNXVUZCV1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzVjBGQlZ5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TlFVRk5MRU5CUVVNc1EwRkJRenRMUVVNeFJEdEpRVU5FTEU5QlFVOHNUMEZCVHl4RFFVRkRPMEZCUTJwQ0xFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lJdktpcGNiaUFxSUVCc2FXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSURJd01Ua2dSMjl2WjJ4bElFeE1ReTRnUVd4c0lGSnBaMmgwY3lCU1pYTmxjblpsWkM1Y2JpQXFYRzRnS2lCTWFXTmxibk5sWkNCMWJtUmxjaUIwYUdVZ1FYQmhZMmhsSUV4cFkyVnVjMlVzSUZabGNuTnBiMjRnTWk0d0lDaDBhR1VnWENKTWFXTmxibk5sWENJcE8xeHVJQ29nZVc5MUlHMWhlU0J1YjNRZ2RYTmxJSFJvYVhNZ1ptbHNaU0JsZUdObGNIUWdhVzRnWTI5dGNHeHBZVzVqWlNCM2FYUm9JSFJvWlNCTWFXTmxibk5sTGx4dUlDb2dXVzkxSUcxaGVTQnZZblJoYVc0Z1lTQmpiM0I1SUc5bUlIUm9aU0JNYVdObGJuTmxJR0YwWEc0Z0tseHVJQ29nSUNBZ0lHaDBkSEE2THk5M2QzY3VZWEJoWTJobExtOXlaeTlzYVdObGJuTmxjeTlNU1VORlRsTkZMVEl1TUZ4dUlDcGNiaUFxSUZWdWJHVnpjeUJ5WlhGMWFYSmxaQ0JpZVNCaGNIQnNhV05oWW14bElHeGhkeUJ2Y2lCaFozSmxaV1FnZEc4Z2FXNGdkM0pwZEdsdVp5d2djMjltZEhkaGNtVmNiaUFxSUdScGMzUnlhV0oxZEdWa0lIVnVaR1Z5SUhSb1pTQk1hV05sYm5ObElHbHpJR1JwYzNSeWFXSjFkR1ZrSUc5dUlHRnVJRndpUVZNZ1NWTmNJaUJDUVZOSlV5eGNiaUFxSUZkSlZFaFBWVlFnVjBGU1VrRk9WRWxGVXlCUFVpQkRUMDVFU1ZSSlQwNVRJRTlHSUVGT1dTQkxTVTVFTENCbGFYUm9aWElnWlhod2NtVnpjeUJ2Y2lCcGJYQnNhV1ZrTGx4dUlDb2dVMlZsSUhSb1pTQk1hV05sYm5ObElHWnZjaUIwYUdVZ2MzQmxZMmxtYVdNZ2JHRnVaM1ZoWjJVZ1oyOTJaWEp1YVc1bklIQmxjbTFwYzNOcGIyNXpJR0Z1WkZ4dUlDb2diR2x0YVhSaGRHbHZibk1nZFc1a1pYSWdkR2hsSUV4cFkyVnVjMlV1WEc0Z0tpQTlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQwOVBUMDlQVDA5UFQxY2JpQXFMMXh1WEc0dktpcGNiaUFxSUZSb2FYTWdhWE1nWVNCS1lYWmhVMk55YVhCMElISmxhVzF3YkdWdFpXNTBZWFJwYjI0Z2IyWWdWVTFCVUNBb2IzSnBaMmx1WVd3Z2JHbGpaVzV6WlNCaVpXeHZkeWtzSUdaeWIyMWNiaUFxSUhSb1pTQndlWFJvYjI0Z2FXMXdiR1Z0Wlc1MFlYUnBiMjRnWm05MWJtUWdZWFFnYUhSMGNITTZMeTluYVhSb2RXSXVZMjl0TDJ4dFkybHVibVZ6TDNWdFlYQXVYRzRnS2x4dUlDb2dRR0YxZEdodmNpQmhibVI1WTI5bGJtVnVRR2R2YjJkc1pTNWpiMjBnS0VGdVpIa2dRMjlsYm1WdUtWeHVJQ292WEc1Y2JpOHFLbHh1SUNvZ1FHeHBZMlZ1YzJWY2JpQXFJRUpUUkNBekxVTnNZWFZ6WlNCTWFXTmxibk5sWEc0Z0tseHVJQ29nUTI5d2VYSnBaMmgwSUNoaktTQXlNREUzTENCTVpXeGhibVFnVFdOSmJtNWxjMXh1SUNvZ1FXeHNJSEpwWjJoMGN5QnlaWE5sY25abFpDNWNiaUFxWEc0Z0tpQlNaV1JwYzNSeWFXSjFkR2x2YmlCaGJtUWdkWE5sSUdsdUlITnZkWEpqWlNCaGJtUWdZbWx1WVhKNUlHWnZjbTF6TENCM2FYUm9JRzl5SUhkcGRHaHZkWFJjYmlBcUlHMXZaR2xtYVdOaGRHbHZiaXdnWVhKbElIQmxjbTFwZEhSbFpDQndjbTkyYVdSbFpDQjBhR0YwSUhSb1pTQm1iMnhzYjNkcGJtY2dZMjl1WkdsMGFXOXVjeUJoY21VZ2JXVjBPbHh1SUNwY2JpQXFJQ29nVW1Wa2FYTjBjbWxpZFhScGIyNXpJRzltSUhOdmRYSmpaU0JqYjJSbElHMTFjM1FnY21WMFlXbHVJSFJvWlNCaFltOTJaU0JqYjNCNWNtbG5hSFFnYm05MGFXTmxMQ0IwYUdselhHNGdLaUFnSUd4cGMzUWdiMllnWTI5dVpHbDBhVzl1Y3lCaGJtUWdkR2hsSUdadmJHeHZkMmx1WnlCa2FYTmpiR0ZwYldWeUxseHVJQ3BjYmlBcUlDb2dVbVZrYVhOMGNtbGlkWFJwYjI1eklHbHVJR0pwYm1GeWVTQm1iM0p0SUcxMWMzUWdjbVZ3Y205a2RXTmxJSFJvWlNCaFltOTJaU0JqYjNCNWNtbG5hSFFnYm05MGFXTmxMRnh1SUNvZ0lDQjBhR2x6SUd4cGMzUWdiMllnWTI5dVpHbDBhVzl1Y3lCaGJtUWdkR2hsSUdadmJHeHZkMmx1WnlCa2FYTmpiR0ZwYldWeUlHbHVJSFJvWlNCa2IyTjFiV1Z1ZEdGMGFXOXVYRzRnS2lBZ0lHRnVaQzl2Y2lCdmRHaGxjaUJ0WVhSbGNtbGhiSE1nY0hKdmRtbGtaV1FnZDJsMGFDQjBhR1VnWkdsemRISnBZblYwYVc5dUxseHVJQ3BjYmlBcUlDb2dUbVZwZEdobGNpQjBhR1VnYm1GdFpTQnZaaUIwYUdVZ1kyOXdlWEpwWjJoMElHaHZiR1JsY2lCdWIzSWdkR2hsSUc1aGJXVnpJRzltSUdsMGMxeHVJQ29nSUNCamIyNTBjbWxpZFhSdmNuTWdiV0Y1SUdKbElIVnpaV1FnZEc4Z1pXNWtiM0p6WlNCdmNpQndjbTl0YjNSbElIQnliMlIxWTNSeklHUmxjbWwyWldRZ1puSnZiVnh1SUNvZ0lDQjBhR2x6SUhOdlpuUjNZWEpsSUhkcGRHaHZkWFFnYzNCbFkybG1hV01nY0hKcGIzSWdkM0pwZEhSbGJpQndaWEp0YVhOemFXOXVMbHh1SUNwY2JpQXFJRlJJU1ZNZ1UwOUdWRmRCVWtVZ1NWTWdVRkpQVmtsRVJVUWdRbGtnVkVoRklFTlBVRmxTU1VkSVZDQklUMHhFUlZKVElFRk9SQ0JEVDA1VVVrbENWVlJQVWxNZ1hDSkJVeUJKVTF3aVhHNGdLaUJCVGtRZ1FVNVpJRVZZVUZKRlUxTWdUMUlnU1UxUVRFbEZSQ0JYUVZKU1FVNVVTVVZUTENCSlRrTk1WVVJKVGtjc0lFSlZWQ0JPVDFRZ1RFbE5TVlJGUkNCVVR5d2dWRWhGWEc0Z0tpQkpUVkJNU1VWRUlGZEJVbEpCVGxSSlJWTWdUMFlnVFVWU1EwaEJUbFJCUWtsTVNWUlpJRUZPUkNCR1NWUk9SVk5USUVaUFVpQkJJRkJCVWxSSlExVk1RVklnVUZWU1VFOVRSU0JCVWtWY2JpQXFJRVJKVTBOTVFVbE5SVVF1SUVsT0lFNVBJRVZXUlU1VUlGTklRVXhNSUZSSVJTQkRUMUJaVWtsSFNGUWdTRTlNUkVWU0lFOVNJRU5QVGxSU1NVSlZWRTlTVXlCQ1JTQk1TVUZDVEVWY2JpQXFJRVpQVWlCQlRsa2dSRWxTUlVOVUxDQkpUa1JKVWtWRFZDd2dTVTVEU1VSRlRsUkJUQ3dnVTFCRlEwbEJUQ3dnUlZoRlRWQk1RVkpaTENCUFVpQkRUMDVUUlZGVlJVNVVTVUZNWEc0Z0tpQkVRVTFCUjBWVElDaEpUa05NVlVSSlRrY3NJRUpWVkNCT1QxUWdURWxOU1ZSRlJDQlVUeXdnVUZKUFExVlNSVTFGVGxRZ1QwWWdVMVZDVTFSSlZGVlVSU0JIVDA5RVV5QlBVbHh1SUNvZ1UwVlNWa2xEUlZNN0lFeFBVMU1nVDBZZ1ZWTkZMQ0JFUVZSQkxDQlBVaUJRVWs5R1NWUlRPeUJQVWlCQ1ZWTkpUa1ZUVXlCSlRsUkZVbEpWVUZSSlQwNHBJRWhQVjBWV1JWSmNiaUFxSUVOQlZWTkZSQ0JCVGtRZ1QwNGdRVTVaSUZSSVJVOVNXU0JQUmlCTVNVRkNTVXhKVkZrc0lGZElSVlJJUlZJZ1NVNGdRMDlPVkZKQlExUXNJRk5VVWtsRFZDQk1TVUZDU1V4SlZGa3NYRzRnS2lCUFVpQlVUMUpVSUNoSlRrTk1WVVJKVGtjZ1RrVkhURWxIUlU1RFJTQlBVaUJQVkVoRlVsZEpVMFVwSUVGU1NWTkpUa2NnU1U0Z1FVNVpJRmRCV1NCUFZWUWdUMFlnVkVoRklGVlRSVnh1SUNvZ1QwWWdWRWhKVXlCVFQwWlVWMEZTUlN3Z1JWWkZUaUJKUmlCQlJGWkpVMFZFSUU5R0lGUklSU0JRVDFOVFNVSkpURWxVV1NCUFJpQlRWVU5JSUVSQlRVRkhSUzVjYmlBcUwxeHVYRzVwYlhCdmNuUWdLaUJoY3lCb1pXRndJR1p5YjIwZ0p5NHZhR1ZoY0NjN1hHNXBiWEJ2Y25RZ0tpQmhjeUJ0WVhSeWFYZ2dabkp2YlNBbkxpOXRZWFJ5YVhnbk8xeHVhVzF3YjNKMElDb2dZWE1nZEhKbFpTQm1jbTl0SUNjdUwzUnlaV1VuTzF4dWFXMXdiM0owSUNvZ1lYTWdkWFJwYkhNZ1puSnZiU0FuTGk5MWRHbHNjeWM3WEc1cGJYQnZjblFnZTFKaGJtUnZiVVp1TENCV1pXTjBiM0p6TENCRWFYTjBZVzVqWlVadUxDQldaV04wYjNKOUlHWnliMjBnSnk0dmRXMWhjQ2M3WEc1Y2JpOHFLbHh1SUNvZ1EzSmxZWFJsSUdFZ2RtVnljMmx2YmlCdlppQnVaV0Z5WlhOMElHNWxhV2RvWW05eUlHUmxjMk5sYm5RdVhHNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ0WVd0bFRrNUVaWE5qWlc1MEtHUnBjM1JoYm1ObFJtNDZJRVJwYzNSaGJtTmxSbTRzSUhKaGJtUnZiVG9nVW1GdVpHOXRSbTRwSUh0Y2JpQWdjbVYwZFhKdUlHWjFibU4wYVc5dUlHNU9SR1Z6WTJWdWRDaGNiaUFnSUNCa1lYUmhPaUJXWldOMGIzSXNYRzRnSUNBZ2JHVmhaa0Z5Y21GNU9pQldaV04wYjNKekxGeHVJQ0FnSUc1T1pXbG5hR0p2Y25NNklHNTFiV0psY2l4Y2JpQWdJQ0J1U1hSbGNuTWdQU0F4TUN4Y2JpQWdJQ0J0WVhoRFlXNWthV1JoZEdWeklEMGdOVEFzWEc0Z0lDQWdaR1ZzZEdFZ1BTQXdMakF3TVN4Y2JpQWdJQ0J5YUc4Z1BTQXdMalVzWEc0Z0lDQWdjbkJVY21WbFNXNXBkQ0E5SUhSeWRXVmNiaUFnS1NCN1hHNGdJQ0FnWTI5dWMzUWdibFpsY25ScFkyVnpJRDBnWkdGMFlTNXNaVzVuZEdnN1hHNGdJQ0FnWTI5dWMzUWdZM1Z5Y21WdWRFZHlZWEJvSUQwZ2FHVmhjQzV0WVd0bFNHVmhjQ2hrWVhSaExteGxibWQwYUN3Z2JrNWxhV2RvWW05eWN5azdYRzVjYmlBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJR1JoZEdFdWJHVnVaM1JvT3lCcEt5c3BJSHRjYmlBZ0lDQWdJR052Ym5OMElHbHVaR2xqWlhNZ1BTQm9aV0Z3TG5KbGFtVmpkR2x2YmxOaGJYQnNaU2h1VG1WcFoyaGliM0p6TENCa1lYUmhMbXhsYm1kMGFDd2djbUZ1Wkc5dEtUdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHb2dQU0F3T3lCcUlEd2dhVzVrYVdObGN5NXNaVzVuZEdnN0lHb3JLeWtnZTF4dUlDQWdJQ0FnSUNCamIyNXpkQ0JrSUQwZ1pHbHpkR0Z1WTJWR2JpaGtZWFJoVzJsZExDQmtZWFJoVzJsdVpHbGpaWE5iYWwxZEtUdGNibHh1SUNBZ0lDQWdJQ0JvWldGd0xtaGxZWEJRZFhOb0tHTjFjbkpsYm5SSGNtRndhQ3dnYVN3Z1pDd2dhVzVrYVdObGMxdHFYU3dnTVNrN1hHNGdJQ0FnSUNBZ0lHaGxZWEF1YUdWaGNGQjFjMmdvWTNWeWNtVnVkRWR5WVhCb0xDQnBibVJwWTJWelcycGRMQ0JrTENCcExDQXhLVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUNBZ2FXWWdLSEp3VkhKbFpVbHVhWFFwSUh0Y2JpQWdJQ0FnSUdadmNpQW9iR1YwSUc0Z1BTQXdPeUJ1SUR3Z2JHVmhaa0Z5Y21GNUxteGxibWQwYURzZ2Jpc3JLU0I3WEc0Z0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2JHVmhaa0Z5Y21GNVcyNWRMbXhsYm1kMGFEc2dhU3NyS1NCN1hHNGdJQ0FnSUNBZ0lDQWdhV1lnS0d4bFlXWkJjbkpoZVZ0dVhWdHBYU0E4SURBcFhHNGdJQ0FnSUNBZ0lDQWdJQ0JpY21WaGF6dGNibHh1SUNBZ0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdvZ1BTQnBJQ3NnTVRzZ2FpQThJR3hsWVdaQmNuSmhlVnR1WFM1c1pXNW5kR2c3SUdvckt5a2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR3hsWVdaQmNuSmhlVnR1WFZ0cVhTQThJREFwWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJR0p5WldGck8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyNXpkQ0JrSUQwZ1pHbHpkR0Z1WTJWR2JpaGtZWFJoVzJ4bFlXWkJjbkpoZVZ0dVhWdHBYVjBzSUdSaGRHRmJiR1ZoWmtGeWNtRjVXMjVkVzJwZFhTazdYRzRnSUNBZ0lDQWdJQ0FnSUNCb1pXRndMbWhsWVhCUWRYTm9LR04xY25KbGJuUkhjbUZ3YUN3Z2JHVmhaa0Z5Y21GNVcyNWRXMmxkTENCa0xDQnNaV0ZtUVhKeVlYbGJibDFiYWwwc0lERXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FHVmhjQzVvWldGd1VIVnphQ2hqZFhKeVpXNTBSM0poY0dnc0lHeGxZV1pCY25KaGVWdHVYVnRxWFN3Z1pDd2diR1ZoWmtGeWNtRjVXMjVkVzJsZExDQXhLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNiaUFnSUNCOVhHNWNiaUFnSUNCbWIzSWdLR3hsZENCdUlEMGdNRHNnYmlBOElHNUpkR1Z5Y3pzZ2Jpc3JLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQmpZVzVrYVdSaGRHVk9aV2xuYUdKdmNuTWdQU0JvWldGd0xtSjFhV3hrUTJGdVpHbGtZWFJsY3loY2JpQWdJQ0FnSUNBZ1kzVnljbVZ1ZEVkeVlYQm9MRnh1SUNBZ0lDQWdJQ0J1Vm1WeWRHbGpaWE1zWEc0Z0lDQWdJQ0FnSUc1T1pXbG5hR0p2Y25Nc1hHNGdJQ0FnSUNBZ0lHMWhlRU5oYm1ScFpHRjBaWE1zWEc0Z0lDQWdJQ0FnSUhKaGJtUnZiVnh1SUNBZ0lDQWdLVHRjYmx4dUlDQWdJQ0FnYkdWMElHTWdQU0F3TzF4dUlDQWdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCdVZtVnlkR2xqWlhNN0lHa3JLeWtnZTF4dUlDQWdJQ0FnSUNCbWIzSWdLR3hsZENCcUlEMGdNRHNnYWlBOElHMWhlRU5oYm1ScFpHRjBaWE03SUdvckt5a2dlMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJSEFnUFNCTllYUm9MbVpzYjI5eUtHTmhibVJwWkdGMFpVNWxhV2RvWW05eWMxc3dYVnRwWFZ0cVhTazdYRzRnSUNBZ0lDQWdJQ0FnYVdZZ0tIQWdQQ0F3SUh4OElIVjBhV3h6TG5SaGRWSmhibVFvY21GdVpHOXRLU0E4SUhKb2J5bGNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJuUnBiblZsTzF4dVhHNGdJQ0FnSUNBZ0lDQWdabTl5SUNoc1pYUWdheUE5SURBN0lHc2dQQ0J0WVhoRFlXNWthV1JoZEdWek95QnJLeXNwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElIRWdQU0JOWVhSb0xtWnNiMjl5S0dOaGJtUnBaR0YwWlU1bGFXZG9ZbTl5YzFzd1hWdHBYVnRyWFNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQmphaUE5SUdOaGJtUnBaR0YwWlU1bGFXZG9ZbTl5YzFzeVhWdHBYVnRxWFR0Y2JpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElHTnJJRDBnWTJGdVpHbGtZWFJsVG1WcFoyaGliM0p6V3pKZFcybGRXMnRkTzF4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0hFZ1BDQXdJSHg4SUNnaFkyb2dKaVlnSVdOcktTbGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVkR2x1ZFdVN1hHNWNibHh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWkNBOUlHUnBjM1JoYm1ObFJtNG9aR0YwWVZ0d1hTd2daR0YwWVZ0eFhTazdYRzRnSUNBZ0lDQWdJQ0FnSUNCaklDczlJR2hsWVhBdWFHVmhjRkIxYzJnb1kzVnljbVZ1ZEVkeVlYQm9MQ0J3TENCa0xDQnhMQ0F4S1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJR01nS3owZ2FHVmhjQzVvWldGd1VIVnphQ2hqZFhKeVpXNTBSM0poY0dnc0lIRXNJR1FzSUhBc0lERXBPMXh1SUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2FXWWdLR01nUEQwZ1pHVnNkR0VnS2lCdVRtVnBaMmhpYjNKeklDb2daR0YwWVM1c1pXNW5kR2dwWEc0Z0lDQWdJQ0FnSUdKeVpXRnJPMXh1SUNBZ0lIMWNiaUFnSUNCamIyNXpkQ0J6YjNKMFpXUWdQU0JvWldGd0xtUmxhR1ZoY0ZOdmNuUW9ZM1Z5Y21WdWRFZHlZWEJvS1R0Y2JpQWdJQ0J5WlhSMWNtNGdjMjl5ZEdWa08xeHVJQ0I5TzF4dWZWeHVYRzVsZUhCdmNuUWdkSGx3WlNCSmJtbDBSbkp2YlZKaGJtUnZiVVp1SUQwZ0tGeHVJQ0J1VG1WcFoyaGliM0p6T2lCdWRXMWlaWElzWEc0Z0lHUmhkR0U2SUZabFkzUnZjaXhjYmlBZ2NYVmxjbmxRYjJsdWRITTZJRlpsWTNSdmNpeGNiaUFnWDJobFlYQTZJR2hsWVhBdVNHVmhjQ3hjYmlBZ2NtRnVaRzl0T2lCU1lXNWtiMjFHYmx4dUtTQTlQaUIyYjJsa08xeHVYRzVsZUhCdmNuUWdkSGx3WlNCSmJtbDBSbkp2YlZSeVpXVkdiaUE5SUNoY2JpQWdYM1J5WldVNklIUnlaV1V1Um14aGRGUnlaV1VzWEc0Z0lHUmhkR0U2SUZabFkzUnZjaXhjYmlBZ2NYVmxjbmxRYjJsdWRITTZJRlpsWTNSdmNpeGNiaUFnWDJobFlYQTZJR2hsWVhBdVNHVmhjQ3hjYmlBZ2NtRnVaRzl0T2lCU1lXNWtiMjFHYmx4dUtTQTlQaUIyYjJsa08xeHVYRzVsZUhCdmNuUWdablZ1WTNScGIyNGdiV0ZyWlVsdWFYUnBZV3hwZW1GMGFXOXVjeWhrYVhOMFlXNWpaVVp1T2lCRWFYTjBZVzVqWlVadUtTQjdYRzRnSUdaMWJtTjBhVzl1SUdsdWFYUkdjbTl0VW1GdVpHOXRLRnh1SUNBZ0lHNU9aV2xuYUdKdmNuTTZJRzUxYldKbGNpeGNiaUFnSUNCa1lYUmhPaUJXWldOMGIzSXNYRzRnSUNBZ2NYVmxjbmxRYjJsdWRITTZJRlpsWTNSdmNpeGNiaUFnSUNCZmFHVmhjRG9nYUdWaGNDNUlaV0Z3TEZ4dUlDQWdJSEpoYm1SdmJUb2dVbUZ1Wkc5dFJtNWNiaUFnS1NCN1hHNGdJQ0FnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCeGRXVnllVkJ2YVc1MGN5NXNaVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJQ0FnWTI5dWMzUWdhVzVrYVdObGN5QTlJSFYwYVd4ekxuSmxhbVZqZEdsdmJsTmhiWEJzWlNodVRtVnBaMmhpYjNKekxDQmtZWFJoTG14bGJtZDBhQ3dnY21GdVpHOXRLVHRjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJR29nUFNBd095QnFJRHdnYVc1a2FXTmxjeTVzWlc1bmRHZzdJR29yS3lrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYVc1a2FXTmxjMXRxWFNBOElEQXBYRzRnSUNBZ0lDQWdJQ0FnWTI5dWRHbHVkV1U3WEc1Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWkNBOUlHUnBjM1JoYm1ObFJtNG9aR0YwWVZ0cGJtUnBZMlZ6VzJwZFhTd2djWFZsY25sUWIybHVkSE5iYVYwcE8xeHVJQ0FnSUNBZ0lDQm9aV0Z3TG1obFlYQlFkWE5vS0Y5b1pXRndMQ0JwTENCa0xDQnBibVJwWTJWelcycGRMQ0F4S1R0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc0Z0lIMWNibHh1SUNCbWRXNWpkR2x2YmlCcGJtbDBSbkp2YlZSeVpXVW9YRzRnSUNBZ1gzUnlaV1U2SUhSeVpXVXVSbXhoZEZSeVpXVXNYRzRnSUNBZ1pHRjBZVG9nVm1WamRHOXlMRnh1SUNBZ0lIRjFaWEo1VUc5cGJuUnpPaUJXWldOMGIzSXNYRzRnSUNBZ1gyaGxZWEE2SUdobFlYQXVTR1ZoY0N4Y2JpQWdJQ0J5WVc1a2IyMDZJRkpoYm1SdmJVWnVYRzRnSUNrZ2UxeHVJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z2NYVmxjbmxRYjJsdWRITXViR1Z1WjNSb095QnBLeXNwSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJR2x1WkdsalpYTWdQU0IwY21WbExuTmxZWEpqYUVac1lYUlVjbVZsS0hGMVpYSjVVRzlwYm5SelcybGRMQ0JmZEhKbFpTd2djbUZ1Wkc5dEtUdGNibHh1SUNBZ0lDQWdabTl5SUNoc1pYUWdhaUE5SURBN0lHb2dQQ0JwYm1ScFkyVnpMbXhsYm1kMGFEc2dhaXNyS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2hwYm1ScFkyVnpXMnBkSUR3Z01DbGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNDdYRzVjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdaQ0E5SUdScGMzUmhibU5sUm00b1pHRjBZVnRwYm1ScFkyVnpXMnBkWFN3Z2NYVmxjbmxRYjJsdWRITmJhVjBwTzF4dUlDQWdJQ0FnSUNCb1pXRndMbWhsWVhCUWRYTm9LRjlvWldGd0xDQnBMQ0JrTENCcGJtUnBZMlZ6VzJwZExDQXhLVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUNBZ2NtVjBkWEp1TzF4dUlDQjlYRzVjYmlBZ2NtVjBkWEp1SUh0cGJtbDBSbkp2YlZKaGJtUnZiU3dnYVc1cGRFWnliMjFVY21WbGZUdGNibjFjYmx4dVpYaHdiM0owSUhSNWNHVWdVMlZoY21Ob1JtNGdQU0FvWEc0Z0lHUmhkR0U2SUZabFkzUnZjaXhjYmlBZ1ozSmhjR2c2SUcxaGRISnBlQzVUY0dGeWMyVk5ZWFJ5YVhnc1hHNGdJR2x1YVhScFlXeHBlbUYwYVc5dU9pQm9aV0Z3TGtobFlYQXNYRzRnSUhGMVpYSjVVRzlwYm5Sek9pQldaV04wYjNKY2Jpa2dQVDRnYUdWaGNDNUlaV0Z3TzF4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2JXRnJaVWx1YVhScFlXeHBlbVZrVGs1VFpXRnlZMmdvWkdsemRHRnVZMlZHYmpvZ1JHbHpkR0Z1WTJWR2Jpa2dlMXh1SUNCeVpYUjFjbTRnWm5WdVkzUnBiMjRnYm01VFpXRnlZMmhHYmloY2JpQWdJQ0JrWVhSaE9pQldaV04wYjNJc1hHNGdJQ0FnWjNKaGNHZzZJRzFoZEhKcGVDNVRjR0Z5YzJWTllYUnlhWGdzWEc0Z0lDQWdhVzVwZEdsaGJHbDZZWFJwYjI0NklHaGxZWEF1U0dWaGNDeGNiaUFnSUNCeGRXVnllVkJ2YVc1MGN6b2dWbVZqZEc5eVhHNGdJQ2tnZTF4dUlDQWdJR052Ym5OMElIdHBibVJwWTJWekxDQnBibVJ3ZEhKOUlEMGdiV0YwY21sNExtZGxkRU5UVWlobmNtRndhQ2s3WEc1Y2JpQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhGMVpYSjVVRzlwYm5SekxteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQjBjbWxsWkNBOUlHNWxkeUJUWlhRb2FXNXBkR2xoYkdsNllYUnBiMjViTUYxYmFWMHBPMXh1SUNBZ0lDQWdkMmhwYkdVZ0tIUnlkV1VwSUh0Y2JpQWdJQ0FnSUNBZ0x5OGdSbWx1WkNCemJXRnNiR1Z6ZENCbWJHRm5aMlZrSUhabGNuUmxlRnh1SUNBZ0lDQWdJQ0JqYjI1emRDQjJaWEowWlhnZ1BTQm9aV0Z3TG5OdFlXeHNaWE4wUm14aFoyZGxaQ2hwYm1sMGFXRnNhWHBoZEdsdmJpd2dhU2s3WEc1Y2JpQWdJQ0FnSUNBZ2FXWWdLSFpsY25SbGVDQTlQVDBnTFRFcFhHNGdJQ0FnSUNBZ0lDQWdZbkpsWVdzN1hHNWNiaUFnSUNBZ0lDQWdZMjl1YzNRZ1kyRnVaR2xrWVhSbGN5QTlJR2x1WkdsalpYTXVjMnhwWTJVb2FXNWtjSFJ5VzNabGNuUmxlRjBzSUdsdVpIQjBjbHQyWlhKMFpYZ2dLeUF4WFNrN1hHNGdJQ0FnSUNBZ0lHWnZjaUFvWTI5dWMzUWdZMkZ1Wkdsa1lYUmxJRzltSUdOaGJtUnBaR0YwWlhNcElIdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqWVc1a2FXUmhkR1VnUFQwOUlIWmxjblJsZUNCOGZGeHVJQ0FnSUNBZ0lDQWdJQ0FnWTJGdVpHbGtZWFJsSUQwOVBTQXRNU0I4ZkZ4dUlDQWdJQ0FnSUNBZ0lDQWdkSEpwWldRdWFHRnpLR05oYm1ScFpHRjBaU2xjYmlBZ0lDQWdJQ0FnSUNBcFhHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjI1MGFXNTFaVHRjYmx4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUdRZ1BTQmthWE4wWVc1alpVWnVLR1JoZEdGYlkyRnVaR2xrWVhSbFhTd2djWFZsY25sUWIybHVkSE5iYVYwcE8xeHVJQ0FnSUNBZ0lDQWdJR2hsWVhBdWRXNWphR1ZqYTJWa1NHVmhjRkIxYzJnb2FXNXBkR2xoYkdsNllYUnBiMjRzSUdrc0lHUXNJR05oYm1ScFpHRjBaU3dnTVNrN1hHNGdJQ0FnSUNBZ0lDQWdkSEpwWldRdVlXUmtLR05oYm1ScFpHRjBaU2s3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc0Z0lDQWdjbVYwZFhKdUlHbHVhWFJwWVd4cGVtRjBhVzl1TzF4dUlDQjlPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2FXNXBkR2xoYkdsNlpWTmxZWEpqYUNoY2JpQWdabTl5WlhOME9pQjBjbVZsTGtac1lYUlVjbVZsVzEwc1hHNGdJR1JoZEdFNklGWmxZM1J2Y2l4Y2JpQWdjWFZsY25sUWIybHVkSE02SUZabFkzUnZjaXhjYmlBZ2JrNWxhV2RvWW05eWN6b2diblZ0WW1WeUxGeHVJQ0JwYm1sMFJuSnZiVkpoYm1SdmJUb2dTVzVwZEVaeWIyMVNZVzVrYjIxR2JpeGNiaUFnYVc1cGRFWnliMjFVY21WbE9pQkpibWwwUm5KdmJWUnlaV1ZHYml4Y2JpQWdjbUZ1Wkc5dE9pQlNZVzVrYjIxR2JseHVLU0I3WEc0Z0lHTnZibk4wSUhKbGMzVnNkSE1nUFNCb1pXRndMbTFoYTJWSVpXRndLSEYxWlhKNVVHOXBiblJ6TG14bGJtZDBhQ3dnYms1bGFXZG9ZbTl5Y3lrN1hHNGdJR2x1YVhSR2NtOXRVbUZ1Wkc5dEtHNU9aV2xuYUdKdmNuTXNJR1JoZEdFc0lIRjFaWEo1VUc5cGJuUnpMQ0J5WlhOMWJIUnpMQ0J5WVc1a2IyMHBPMXh1SUNCcFppQW9abTl5WlhOMEtTQjdYRzRnSUNBZ1ptOXlJQ2hqYjI1emRDQjBjbVZsSUc5bUlHWnZjbVZ6ZENsY2JpQWdJQ0FnSUdsdWFYUkdjbTl0VkhKbFpTaDBjbVZsTENCa1lYUmhMQ0J4ZFdWeWVWQnZhVzUwY3l3Z2NtVnpkV3gwY3l3Z2NtRnVaRzl0S1R0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnY21WemRXeDBjenRjYm4xY2JpSmRmUT09IiwiaW1wb3J0IGlzQXJyYXkgZnJvbSAnaXMtYW55LWFycmF5JztcblxuaW1wb3J0IGVycm9yQ2FsY3VsYXRpb24gZnJvbSAnLi9lcnJvckNhbGN1bGF0aW9uJztcbmltcG9ydCBzdGVwIGZyb20gJy4vc3RlcCc7XG5cbi8qKlxuICogQ3VydmUgZml0dGluZyBhbGdvcml0aG1cbiAqIEBwYXJhbSB7e3g6QXJyYXk8bnVtYmVyPiwgeTpBcnJheTxudW1iZXI+fX0gZGF0YSAtIEFycmF5IG9mIHBvaW50cyB0byBmaXQgaW4gdGhlIGZvcm1hdCBbeDEsIHgyLCAuLi4gXSwgW3kxLCB5MiwgLi4uIF1cbiAqIEBwYXJhbSB7ZnVuY3Rpb259IHBhcmFtZXRlcml6ZWRGdW5jdGlvbiAtIFRoZSBwYXJhbWV0ZXJzIGFuZCByZXR1cm5zIGEgZnVuY3Rpb24gd2l0aCB0aGUgaW5kZXBlbmRlbnQgdmFyaWFibGUgYXMgYSBwYXJhbWV0ZXJcbiAqIEBwYXJhbSB7b2JqZWN0fSBbb3B0aW9uc10gLSBPcHRpb25zIG9iamVjdFxuICogQHBhcmFtIHtudW1iZXJ9IFtvcHRpb25zLmRhbXBpbmddIC0gTGV2ZW5iZXJnLU1hcnF1YXJkdCBwYXJhbWV0ZXJcbiAqIEBwYXJhbSB7bnVtYmVyfSBbb3B0aW9ucy5ncmFkaWVudERpZmZlcmVuY2UgPSAxMGUtMl0gLSBBZGp1c3RtZW50IGZvciBkZWNyZWFzZSB0aGUgZGFtcGluZyBwYXJhbWV0ZXJcbiAqIEBwYXJhbSB7QXJyYXk8bnVtYmVyPn0gW29wdGlvbnMubWluVmFsdWVzXSAtIE1pbmltdW0gYWxsb3dlZCB2YWx1ZXMgZm9yIHBhcmFtZXRlcnNcbiAqIEBwYXJhbSB7QXJyYXk8bnVtYmVyPn0gW29wdGlvbnMubWF4VmFsdWVzXSAtIE1heGltdW0gYWxsb3dlZCB2YWx1ZXMgZm9yIHBhcmFtZXRlcnNcbiAqIEBwYXJhbSB7QXJyYXk8bnVtYmVyPn0gW29wdGlvbnMuaW5pdGlhbFZhbHVlc10gLSBBcnJheSBvZiBpbml0aWFsIHBhcmFtZXRlciB2YWx1ZXNcbiAqIEBwYXJhbSB7bnVtYmVyfSBbb3B0aW9ucy5tYXhJdGVyYXRpb25zID0gMTAwXSAtIE1heGltdW0gb2YgYWxsb3dlZCBpdGVyYXRpb25zXG4gKiBAcGFyYW0ge251bWJlcn0gW29wdGlvbnMuZXJyb3JUb2xlcmFuY2UgPSAxMGUtM10gLSBNaW5pbXVtIHVuY2VydGFpbnR5IGFsbG93ZWQgZm9yIGVhY2ggcG9pbnRcbiAqIEByZXR1cm4ge3twYXJhbWV0ZXJWYWx1ZXM6IEFycmF5PG51bWJlcj4sIHBhcmFtZXRlckVycm9yOiBudW1iZXIsIGl0ZXJhdGlvbnM6IG51bWJlcn19XG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGxldmVuYmVyZ01hcnF1YXJkdChcbiAgZGF0YSxcbiAgcGFyYW1ldGVyaXplZEZ1bmN0aW9uLFxuICBvcHRpb25zID0ge30sXG4pIHtcbiAgbGV0IHtcbiAgICBtYXhJdGVyYXRpb25zID0gMTAwLFxuICAgIGdyYWRpZW50RGlmZmVyZW5jZSA9IDEwZS0yLFxuICAgIGRhbXBpbmcgPSAwLFxuICAgIGVycm9yVG9sZXJhbmNlID0gMTBlLTMsXG4gICAgbWluVmFsdWVzLFxuICAgIG1heFZhbHVlcyxcbiAgICBpbml0aWFsVmFsdWVzLFxuICB9ID0gb3B0aW9ucztcblxuICBpZiAoZGFtcGluZyA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgZGFtcGluZyBvcHRpb24gbXVzdCBiZSBhIHBvc2l0aXZlIG51bWJlcicpO1xuICB9IGVsc2UgaWYgKCFkYXRhLnggfHwgIWRhdGEueSkge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhlIGRhdGEgcGFyYW1ldGVyIG11c3QgaGF2ZSB4IGFuZCB5IGVsZW1lbnRzJyk7XG4gIH0gZWxzZSBpZiAoXG4gICAgIWlzQXJyYXkoZGF0YS54KSB8fFxuICAgIGRhdGEueC5sZW5ndGggPCAyIHx8XG4gICAgIWlzQXJyYXkoZGF0YS55KSB8fFxuICAgIGRhdGEueS5sZW5ndGggPCAyXG4gICkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdUaGUgZGF0YSBwYXJhbWV0ZXIgZWxlbWVudHMgbXVzdCBiZSBhbiBhcnJheSB3aXRoIG1vcmUgdGhhbiAyIHBvaW50cycsXG4gICAgKTtcbiAgfSBlbHNlIGlmIChkYXRhLngubGVuZ3RoICE9PSBkYXRhLnkubGVuZ3RoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgZGF0YSBwYXJhbWV0ZXIgZWxlbWVudHMgbXVzdCBoYXZlIHRoZSBzYW1lIHNpemUnKTtcbiAgfVxuXG4gIGxldCBwYXJhbWV0ZXJzID1cbiAgICBpbml0aWFsVmFsdWVzIHx8IG5ldyBBcnJheShwYXJhbWV0ZXJpemVkRnVuY3Rpb24ubGVuZ3RoKS5maWxsKDEpO1xuICBsZXQgcGFyTGVuID0gcGFyYW1ldGVycy5sZW5ndGg7XG4gIG1heFZhbHVlcyA9IG1heFZhbHVlcyB8fCBuZXcgQXJyYXkocGFyTGVuKS5maWxsKE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKTtcbiAgbWluVmFsdWVzID0gbWluVmFsdWVzIHx8IG5ldyBBcnJheShwYXJMZW4pLmZpbGwoTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIpO1xuXG4gIGlmIChtYXhWYWx1ZXMubGVuZ3RoICE9PSBtaW5WYWx1ZXMubGVuZ3RoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdtaW5WYWx1ZXMgYW5kIG1heFZhbHVlcyBtdXN0IGJlIHRoZSBzYW1lIHNpemUnKTtcbiAgfVxuXG4gIGlmICghaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignaW5pdGlhbFZhbHVlcyBtdXN0IGJlIGFuIGFycmF5Jyk7XG4gIH1cblxuICBsZXQgZXJyb3IgPSBlcnJvckNhbGN1bGF0aW9uKGRhdGEsIHBhcmFtZXRlcnMsIHBhcmFtZXRlcml6ZWRGdW5jdGlvbik7XG5cbiAgbGV0IGNvbnZlcmdlZCA9IGVycm9yIDw9IGVycm9yVG9sZXJhbmNlO1xuXG4gIGxldCBpdGVyYXRpb247XG4gIGZvciAoaXRlcmF0aW9uID0gMDsgaXRlcmF0aW9uIDwgbWF4SXRlcmF0aW9ucyAmJiAhY29udmVyZ2VkOyBpdGVyYXRpb24rKykge1xuICAgIHBhcmFtZXRlcnMgPSBzdGVwKFxuICAgICAgZGF0YSxcbiAgICAgIHBhcmFtZXRlcnMsXG4gICAgICBkYW1waW5nLFxuICAgICAgZ3JhZGllbnREaWZmZXJlbmNlLFxuICAgICAgcGFyYW1ldGVyaXplZEZ1bmN0aW9uLFxuICAgICk7XG5cbiAgICBmb3IgKGxldCBrID0gMDsgayA8IHBhckxlbjsgaysrKSB7XG4gICAgICBwYXJhbWV0ZXJzW2tdID0gTWF0aC5taW4oXG4gICAgICAgIE1hdGgubWF4KG1pblZhbHVlc1trXSwgcGFyYW1ldGVyc1trXSksXG4gICAgICAgIG1heFZhbHVlc1trXSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgZXJyb3IgPSBlcnJvckNhbGN1bGF0aW9uKGRhdGEsIHBhcmFtZXRlcnMsIHBhcmFtZXRlcml6ZWRGdW5jdGlvbik7XG4gICAgaWYgKGlzTmFOKGVycm9yKSkgYnJlYWs7XG4gICAgY29udmVyZ2VkID0gZXJyb3IgPD0gZXJyb3JUb2xlcmFuY2U7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHBhcmFtZXRlclZhbHVlczogcGFyYW1ldGVycyxcbiAgICBwYXJhbWV0ZXJFcnJvcjogZXJyb3IsXG4gICAgaXRlcmF0aW9uczogaXRlcmF0aW9uLFxuICB9O1xufVxuIiwiaW1wb3J0IHsgZG1MaW5lYXJJbmRleCB9IGZyb20gJy4uL2Rpc3RhbmNlLW1hdHJpeCc7XG5leHBvcnQgY2xhc3MgVFNORSB7XG4gICAgcGVycGxleGl0eTtcbiAgICBkaW07XG4gICAgZXBzaWxvbjtcbiAgICBpdGVyID0gMDtcbiAgICBOO1xuICAgIFA7XG4gICAgWTtcbiAgICBnYWlucztcbiAgICB5c3RlcDtcbiAgICByYW5kb20gPSBNYXRoLnJhbmRvbTtcbiAgICBhc3NlcnQoY29uZGl0aW9uLCBtZXNzYWdlKSB7XG4gICAgICAgIGlmICghY29uZGl0aW9uKVxuICAgICAgICAgICAgdGhyb3cgbWVzc2FnZSB8fCAnQXNzZXJ0aW9uIGZhaWxlZCc7XG4gICAgfVxuICAgIC8vIHN5bnRheCBzdWdhclxuICAgIGdldG9wdChvcHQsIGZpZWxkLCBkZWZhdWx0dmFsKSB7XG4gICAgICAgIGlmIChvcHQuaGFzT3duUHJvcGVydHkoZmllbGQpKVxuICAgICAgICAgICAgcmV0dXJuIG9wdFtmaWVsZF07XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHJldHVybiBkZWZhdWx0dmFsO1xuICAgIH1cbiAgICAvLyByZXR1cm4gMCBtZWFuIHVuaXQgc3RhbmRhcmQgZGV2aWF0aW9uIHJhbmRvbSBudW1iZXJcbiAgICByZXR1cm5WID0gZmFsc2U7XG4gICAgdlZhbHVlID0gMC4wO1xuICAgIGdhdXNzUmFuZG9tKCkge1xuICAgICAgICBpZiAodGhpcy5yZXR1cm5WKSB7XG4gICAgICAgICAgICB0aGlzLnJldHVyblYgPSBmYWxzZTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB1ID0gMiAqIHRoaXMucmFuZG9tKCkgLSAxO1xuICAgICAgICBjb25zdCB2ID0gMiAqIHRoaXMucmFuZG9tKCkgLSAxO1xuICAgICAgICBjb25zdCByID0gdSAqIHUgKyB2ICogdjtcbiAgICAgICAgaWYgKHIgPT09IDAgfHwgciA+IDEpXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nYXVzc1JhbmRvbSgpO1xuICAgICAgICBjb25zdCBjID0gTWF0aC5zcXJ0KC0yICogTWF0aC5sb2cocikgLyByKTtcbiAgICAgICAgdGhpcy52VmFsdWUgPSB2ICogYzsgLy8gY2FjaGUgdGhpcyBmb3IgbmV4dCBmdW5jdGlvbiBjYWxsIGZvciBlZmZpY2llbmN5XG4gICAgICAgIHRoaXMucmV0dXJuViA9IHRydWU7XG4gICAgICAgIHJldHVybiB1ICogYztcbiAgICB9XG4gICAgLy8gcmV0dXJuIHJhbmRvbSBub3JtYWwgbnVtYmVyXG4gICAgcmFuZG4obXUsIHN0ZCkge1xuICAgICAgICByZXR1cm4gbXUgKyB0aGlzLmdhdXNzUmFuZG9tKCkgKiBzdGQ7XG4gICAgfVxuICAgIC8vIHV0aWxpdGl0eSB0aGF0IGNyZWF0ZXMgY29udGlndW91cyB2ZWN0b3Igb2YgemVyb3Mgb2Ygc2l6ZSBuXG4gICAgemVyb3Mobikge1xuICAgICAgICBpZiAodHlwZW9mIChuKSA9PT0gJ3VuZGVmaW5lZCcgfHwgaXNOYU4obikpXG4gICAgICAgICAgICByZXR1cm4gbmV3IEZsb2F0MzJBcnJheSgpO1xuICAgICAgICBpZiAodHlwZW9mIEFycmF5QnVmZmVyID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgLy8gbGFja2luZyBicm93c2VyIHN1cHBvcnRcbiAgICAgICAgICAgIGNvbnN0IGFyciA9IG5ldyBGbG9hdDMyQXJyYXkobik7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG47IGkrKylcbiAgICAgICAgICAgICAgICBhcnJbaV0gPSAwO1xuICAgICAgICAgICAgcmV0dXJuIGFycjtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgRmxvYXQzMkFycmF5KG4pOyAvLyB0eXBlZCBhcnJheXMgYXJlIGZhc3RlclxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIHV0aWxpdHkgdGhhdCByZXR1cm5zIDJkIGFycmF5IGZpbGxlZCB3aXRoIHJhbmRvbSBudW1iZXJzXG4gICAgLy8gb3Igd2l0aCB2YWx1ZSBzLCBpZiBwcm92aWRlZFxuICAgIHJhbmRuMmQobiwgZCwgcykge1xuICAgICAgICBjb25zdCB1c2VzID0gdHlwZW9mIHMgIT09ICd1bmRlZmluZWQnO1xuICAgICAgICBjb25zdCB4ID0gKG5ldyBBcnJheShuKSkuZmlsbChudWxsKS5tYXAoKCkgPT4gbmV3IEZsb2F0MzJBcnJheShkKSk7XG4gICAgICAgIGlmICh1c2VzKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG47IGkrKylcbiAgICAgICAgICAgICAgICB4W2ldID0gbmV3IEZsb2F0MzJBcnJheShkKS5maWxsKHMpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IGQ7IGorKylcbiAgICAgICAgICAgICAgICAgICAgeFtpXVtqXSA9IHRoaXMucmFuZG4oMC4wLCAxZS00KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4geDtcbiAgICB9XG4gICAgLy8gY29tcHV0ZSBMMiBkaXN0YW5jZSBiZXR3ZWVuIHR3byB2ZWN0b3JzXG4gICAgbDIoeDEsIHgyKSB7XG4gICAgICAgIGNvbnN0IEQgPSB4MS5sZW5ndGg7XG4gICAgICAgIGxldCBkID0gMDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBEOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHgxaSA9IHgxW2ldO1xuICAgICAgICAgICAgY29uc3QgeDJpID0geDJbaV07XG4gICAgICAgICAgICBkICs9ICh4MWkgLSB4MmkpICogKHgxaSAtIHgyaSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGQ7XG4gICAgfVxuICAgIC8vIGNvbXB1dGUgcGFpcndpc2UgZGlzdGFuY2UgaW4gYWxsIHZlY3RvcnMgaW4gWFxuICAgIHh0b2QoWCkge1xuICAgICAgICBjb25zdCBOID0gWC5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGRpc3QgPSB0aGlzLnplcm9zKE4gKiBOKTsgLy8gYWxsb2NhdGUgY29udGlndW91cyBhcnJheVxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IE47IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgaiA9IGkgKyAxOyBqIDwgTjsgaisrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZCA9IHRoaXMubDIoWFtpXSwgWFtqXSk7XG4gICAgICAgICAgICAgICAgZGlzdFtpICogTiArIGpdID0gZDtcbiAgICAgICAgICAgICAgICBkaXN0W2ogKiBOICsgaV0gPSBkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBkaXN0O1xuICAgIH1cbiAgICBnZXRJdGVyU2l6ZShyb3dTaXplKSB7XG4gICAgICAgIGlmIChyb3dTaXplIDw9IDIwMDApXG4gICAgICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgICBlbHNlIGlmIChyb3dTaXplIDw9IDMwMDApXG4gICAgICAgICAgICByZXR1cm4gOTA7XG4gICAgICAgIGVsc2UgaWYgKHJvd1NpemUgPD0gNTAwMClcbiAgICAgICAgICAgIHJldHVybiA4MDtcbiAgICAgICAgZWxzZVxuICAgICAgICAgICAgcmV0dXJuIDcwO1xuICAgIH1cbiAgICAvLyBjb21wdXRlIChwX3tpfGp9ICsgcF97anxpfSkvKDJuKVxuICAgIGQycChELCBwZXJwbGV4aXR5LCB0b2wsIHJvd1NpemUpIHtcbiAgICAgICAgLy8gY29uc3QgbmYgPSBNYXRoLnNxcnQoRC5sZW5ndGgpOyAvLyB0aGlzIGJldHRlciBiZSBhbiBpbnRlZ2VyXG4gICAgICAgIC8vIGNvbnN0IG4gPSBNYXRoLmZsb29yKG5mKTtcbiAgICAgICAgLy8gdGhpcy5hc3NlcnQobiA9PT0gbmYsICdEIHNob3VsZCBoYXZlIHNxdWFyZSBudW1iZXIgb2YgZWxlbWVudHMuJyk7XG4gICAgICAgIGNvbnN0IGluZGV4ZXIgPSBkbUxpbmVhckluZGV4KHJvd1NpemUpO1xuICAgICAgICBjb25zdCBkaXN0YW5jZXMgPSBuZXcgRmxvYXQzMkFycmF5KHJvd1NpemUgKiByb3dTaXplKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3dTaXplOyBpKyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IHJvd1NpemU7IGorKylcbiAgICAgICAgICAgICAgICBkaXN0YW5jZXNbaSAqIHJvd1NpemUgKyBqXSA9IGRpc3RhbmNlc1tqICogcm93U2l6ZSArIGldID0gRFtpbmRleGVyKGksIGopXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBuID0gcm93U2l6ZTtcbiAgICAgICAgY29uc3QgaFRhcmdldCA9IE1hdGgubG9nKHBlcnBsZXhpdHkpOyAvLyB0YXJnZXQgZW50cm9weSBvZiBkaXN0cmlidXRpb25cbiAgICAgICAgY29uc3QgUCA9IHRoaXMuemVyb3MobiAqIG4pOyAvLyB0ZW1wb3JhcnkgcHJvYmFiaWxpdHkgbWF0cml4XG4gICAgICAgIGNvbnN0IHByb3cgPSB0aGlzLnplcm9zKG4pOyAvLyBhIHRlbXBvcmFyeSBzdG9yYWdlIGNvbXBhcnRtZW50XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbjsgaSsrKSB7XG4gICAgICAgICAgICBsZXQgYmV0YW1pbiA9IC1JbmZpbml0eTtcbiAgICAgICAgICAgIGxldCBiZXRhbWF4ID0gSW5maW5pdHk7XG4gICAgICAgICAgICBsZXQgYmV0YSA9IDE7IC8vIGluaXRpYWwgdmFsdWUgb2YgcHJlY2lzaW9uXG4gICAgICAgICAgICBsZXQgZG9uZSA9IGZhbHNlO1xuICAgICAgICAgICAgY29uc3QgbWF4dHJpZXMgPSBNYXRoLmZsb29yKHRoaXMuZ2V0SXRlclNpemUocm93U2l6ZSkgLyA1KTtcbiAgICAgICAgICAgIC8vIHBlcmZvcm0gYmluYXJ5IHNlYXJjaCB0byBmaW5kIGEgc3VpdGFibGUgcHJlY2lzaW9uIGJldGFcbiAgICAgICAgICAgIC8vIHNvIHRoYXQgdGhlIGVudHJvcHkgb2YgdGhlIGRpc3RyaWJ1dGlvbiBpcyBhcHByb3ByaWF0ZVxuICAgICAgICAgICAgbGV0IG51bSA9IDA7XG4gICAgICAgICAgICB3aGlsZSAoIWRvbmUpIHtcbiAgICAgICAgICAgICAgICAvL2RlYnVnZ2VyO1xuICAgICAgICAgICAgICAgIC8vIGNvbXB1dGUgZW50cm9weSBhbmQga2VybmVsIHJvdyB3aXRoIGJldGEgcHJlY2lzaW9uXG4gICAgICAgICAgICAgICAgbGV0IHBzdW0gPSAwLjA7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBuOyBqKyspIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGogPSBpID09PSBqID8gMCA6IE1hdGguZXhwKC1kaXN0YW5jZXNbaSAqIG4gKyBqXSAqIGJldGEpO1xuICAgICAgICAgICAgICAgICAgICBwcm93W2pdID0gcGo7XG4gICAgICAgICAgICAgICAgICAgIHBzdW0gKz0gcGo7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIG5vcm1hbGl6ZSBwIGFuZCBjb21wdXRlIGVudHJvcHlcbiAgICAgICAgICAgICAgICBsZXQgbkhlcmUgPSAwLjA7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCBuOyBqKyspIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHBqO1xuICAgICAgICAgICAgICAgICAgICBpZiAocHN1bSA9PT0gMClcbiAgICAgICAgICAgICAgICAgICAgICAgIHBqID0gMDtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgcGogPSBwcm93W2pdIC8gcHN1bTtcbiAgICAgICAgICAgICAgICAgICAgcHJvd1tqXSA9IHBqO1xuICAgICAgICAgICAgICAgICAgICBpZiAocGogPiAxZS03KVxuICAgICAgICAgICAgICAgICAgICAgICAgbkhlcmUgLT0gcGogKiBNYXRoLmxvZyhwaik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIGFkanVzdCBiZXRhIGJhc2VkIG9uIHJlc3VsdFxuICAgICAgICAgICAgICAgIGlmIChuSGVyZSA+IGhUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gZW50cm9weSB3YXMgdG9vIGhpZ2ggKGRpc3RyaWJ1dGlvbiB0b28gZGlmZnVzZSlcbiAgICAgICAgICAgICAgICAgICAgLy8gc28gd2UgbmVlZCB0byBpbmNyZWFzZSB0aGUgcHJlY2lzaW9uIGZvciBtb3JlIHBlYWt5IGRpc3RyaWJ1dGlvblxuICAgICAgICAgICAgICAgICAgICBiZXRhbWluID0gYmV0YTsgLy8gbW92ZSB1cCB0aGUgYm91bmRzXG4gICAgICAgICAgICAgICAgICAgIGlmIChiZXRhbWF4ID09PSBJbmZpbml0eSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGJldGEgPSBiZXRhICogMjtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgYmV0YSA9IChiZXRhICsgYmV0YW1heCkgLyAyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29udmVyc2UgY2FzZS4gbWFrZSBkaXN0cnVidGlvbiBsZXNzIHBlYWt5XG4gICAgICAgICAgICAgICAgICAgIGJldGFtYXggPSBiZXRhO1xuICAgICAgICAgICAgICAgICAgICBpZiAoYmV0YW1pbiA9PT0gLUluZmluaXR5KVxuICAgICAgICAgICAgICAgICAgICAgICAgYmV0YSA9IGJldGEgLyAyO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICBiZXRhID0gKGJldGEgKyBiZXRhbWluKSAvIDI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIHN0b3BwaW5nIGNvbmRpdGlvbnM6IHRvbyBtYW55IHRyaWVzIG9yIGdvdCBhIGdvb2QgcHJlY2lzaW9uXG4gICAgICAgICAgICAgICAgbnVtKys7XG4gICAgICAgICAgICAgICAgaWYgKE1hdGguYWJzKG5IZXJlIC0gaFRhcmdldCkgPCB0b2wpXG4gICAgICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGlmIChudW0gPj0gbWF4dHJpZXMpXG4gICAgICAgICAgICAgICAgICAgIGRvbmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coJ2RhdGEgcG9pbnQgJyArIGkgKyAnIGdldHMgcHJlY2lzaW9uICcgKyBiZXRhICsgJyBhZnRlciAnICsgbnVtICsgJyBiaW5hcnkgc2VhcmNoIHN0ZXBzLicpO1xuICAgICAgICAgICAgLy8gY29weSBvdmVyIHRoZSBmaW5hbCBwcm93IHRvIFAgYXQgcm93IGlcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgbjsgaisrKVxuICAgICAgICAgICAgICAgIFBbaSAqIG4gKyBqXSA9IHByb3dbal07XG4gICAgICAgIH0gLy8gZW5kIGxvb3Agb3ZlciBleGFtcGxlcyBpXG4gICAgICAgIC8vIHN5bW1ldHJpemUgUCBhbmQgbm9ybWFsaXplIGl0IHRvIHN1bSB0byAxIG92ZXIgYWxsIGlqXG4gICAgICAgIGNvbnN0IHBPdXQgPSB0aGlzLnplcm9zKG4gKiBuKTtcbiAgICAgICAgY29uc3QgTjIgPSBuICogMjtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgbjsgaisrKVxuICAgICAgICAgICAgICAgIHBPdXRbaSAqIG4gKyBqXSA9IE1hdGgubWF4KChQW2kgKiBuICsgal0gKyBQW2ogKiBuICsgaV0pIC8gTjIsIDFlLTEwMCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBPdXQ7XG4gICAgfVxuICAgIC8vIGhlbHBlciBmdW5jdGlvblxuICAgIHNpZ24oeCkgeyByZXR1cm4geCA+IDAgPyAxIDogeCA8IDAgPyAtMSA6IDA7IH1cbiAgICBjb25zdHJ1Y3RvcihvcHQpIHtcbiAgICAgICAgb3B0ID0gb3B0IHx8IHt9O1xuICAgICAgICB0aGlzLnBlcnBsZXhpdHkgPSB0aGlzLmdldG9wdChvcHQsICdwZXJwbGV4aXR5JywgMzApOyAvLyBlZmZlY3RpdmUgbnVtYmVyIG9mIG5lYXJlc3QgbmVpZ2hib3JzXG4gICAgICAgIHRoaXMuZGltID0gdGhpcy5nZXRvcHQob3B0LCAnZGltJywgMik7IC8vIGJ5IGRlZmF1bHQgMi1EIHRTTkVcbiAgICAgICAgdGhpcy5lcHNpbG9uID0gdGhpcy5nZXRvcHQob3B0LCAnZXBzaWxvbicsIDEwKTsgLy8gbGVhcm5pbmcgcmF0ZVxuICAgICAgICB0aGlzLnJhbmRvbSA9IHRoaXMuZ2V0b3B0KG9wdCwgJ3JhbmRvbScsIE1hdGgucmFuZG9tKTsgLy8gcmFuZG9tIG51bWJlciBnZW5lcmF0b3JcbiAgICB9XG4gICAgLy8gdGhpcyBmdW5jdGlvbiB0YWtlcyBhIHNldCBvZiBoaWdoLWRpbWVuc2lvbmFsIHBvaW50c1xuICAgIC8vIGFuZCBjcmVhdGVzIG1hdHJpeCBQIGZyb20gdGhlbSB1c2luZyBnYXVzc2lhbiBrZXJuZWxcbiAgICBpbml0RGF0YVJhdyhYKSB7XG4gICAgICAgIGNvbnN0IE4gPSBYLmxlbmd0aDtcbiAgICAgICAgY29uc3QgRCA9IFhbMF0ubGVuZ3RoO1xuICAgICAgICB0aGlzLmFzc2VydChOID4gMCwgJyBYIGlzIGVtcHR5PyBZb3UgbXVzdCBoYXZlIHNvbWUgZGF0YSEnKTtcbiAgICAgICAgdGhpcy5hc3NlcnQoRCA+IDAsICcgWFswXSBpcyBlbXB0eT8gV2hlcmUgaXMgdGhlIGRhdGE/Jyk7XG4gICAgICAgIGNvbnN0IGRpc3RzID0gdGhpcy54dG9kKFgpOyAvLyBjb252ZXJ0IFggdG8gZGlzdGFuY2VzIHVzaW5nIGdhdXNzaWFuIGtlcm5lbFxuICAgICAgICB0aGlzLlAgPSB0aGlzLmQycChkaXN0cywgdGhpcy5wZXJwbGV4aXR5LCAxZS00LCBEKTsgLy8gYXR0YWNoIHRvIG9iamVjdFxuICAgICAgICB0aGlzLk4gPSBOOyAvLyBiYWNrIHVwIHRoZSBzaXplIG9mIHRoZSBkYXRhc2V0XG4gICAgICAgIHRoaXMuaW5pdFNvbHV0aW9uKCk7IC8vIHJlZnJlc2ggdGhpc1xuICAgIH1cbiAgICAvLyB0aGlzIGZ1bmN0aW9uIHRha2VzIGEgZ2l2ZW4gZGlzdGFuY2UgbWF0cml4IGFuZCBjcmVhdGVzXG4gICAgLy8gbWF0cml4IFAgZnJvbSB0aGVtLlxuICAgIC8vIEQgaXMgYXNzdW1lZCB0byBiZSBwcm92aWRlZCBhcyBhIGxpc3Qgb2YgbGlzdHMsIGFuZCBzaG91bGQgYmUgc3ltbWV0cmljXG4gICAgaW5pdERhdGFEaXN0KEQsIHJvd1NpemUpIHtcbiAgICAgICAgY29uc3QgTiA9IEQubGVuZ3RoO1xuICAgICAgICB0aGlzLmFzc2VydChOID4gMCwgJyBYIGlzIGVtcHR5PyBZb3UgbXVzdCBoYXZlIHNvbWUgZGF0YSEnKTtcbiAgICAgICAgLy8gY29udmVydCBEIHRvIGEgKGZhc3QpIHR5cGVkIGFycmF5IHZlcnNpb25cbiAgICAgICAgLy8gZGlzdHMuZm9yRWFjaCgoZCkgPT4gY29uc29sZS5sb2coZCkpO1xuICAgICAgICBjb25zb2xlLnRpbWUoJ2Rpc3RhbmNlcyB0byBtYXRyaXgnKTtcbiAgICAgICAgdGhpcy5QID0gdGhpcy5kMnAoRCwgdGhpcy5wZXJwbGV4aXR5LCAxZS00LCByb3dTaXplKTtcbiAgICAgICAgY29uc29sZS50aW1lRW5kKCdkaXN0YW5jZXMgdG8gbWF0cml4Jyk7XG4gICAgICAgIHRoaXMuTiA9IHJvd1NpemU7XG4gICAgICAgIHRoaXMuaW5pdFNvbHV0aW9uKCk7IC8vIHJlZnJlc2ggdGhpc1xuICAgIH1cbiAgICAvLyAocmUpaW5pdGlhbGl6ZXMgdGhlIHNvbHV0aW9uIHRvIHJhbmRvbVxuICAgIGluaXRTb2x1dGlvbigpIHtcbiAgICAgICAgLy8gZ2VuZXJhdGUgcmFuZG9tIHNvbHV0aW9uIHRvIHQtU05FXG4gICAgICAgIHRoaXMuWSA9IHRoaXMucmFuZG4yZCh0aGlzLk4sIHRoaXMuZGltKTsgLy8gdGhlIHNvbHV0aW9uXG4gICAgICAgIHRoaXMuZ2FpbnMgPSB0aGlzLnJhbmRuMmQodGhpcy5OLCB0aGlzLmRpbSwgMS4wKTsgLy8gc3RlcCBnYWlucyB0byBhY2NlbGVyYXRlIHByb2dyZXNzIGluIHVuY2hhbmdpbmcgZGlyZWN0aW9uc1xuICAgICAgICB0aGlzLnlzdGVwID0gdGhpcy5yYW5kbjJkKHRoaXMuTiwgdGhpcy5kaW0sIDAuMCk7IC8vIG1vbWVudHVtIGFjY3VtdWxhdG9yXG4gICAgICAgIHRoaXMuaXRlciA9IDA7XG4gICAgfVxuICAgIC8vIHJldHVybiBwb2ludGVyIHRvIGN1cnJlbnQgc29sdXRpb25cbiAgICBnZXRTb2x1dGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuWTtcbiAgICB9XG4gICAgLy8gcGVyZm9ybSBhIHNpbmdsZSBzdGVwIG9mIG9wdGltaXphdGlvbiB0byBpbXByb3ZlIHRoZSBlbWJlZGRpbmdcbiAgICBzdGVwKCkge1xuICAgICAgICB0aGlzLml0ZXIgKz0gMTtcbiAgICAgICAgY29uc3QgTiA9IHRoaXMuTjtcbiAgICAgICAgY29uc3QgY2cgPSB0aGlzLmNvc3RHcmFkKHRoaXMuWSk7IC8vIGV2YWx1YXRlIGdyYWRpZW50XG4gICAgICAgIGNvbnN0IGNvc3QgPSBjZy5jb3N0O1xuICAgICAgICBjb25zdCBncmFkID0gY2cuZ3JhZDtcbiAgICAgICAgLy8gcGVyZm9ybSBncmFkaWVudCBzdGVwXG4gICAgICAgIGNvbnN0IHltZWFuID0gdGhpcy56ZXJvcyh0aGlzLmRpbSk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgTjsgaSsrKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBkID0gMDsgZCA8IHRoaXMuZGltOyBkKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBnaWQgPSBncmFkW2ldW2RdO1xuICAgICAgICAgICAgICAgIGNvbnN0IHNpZCA9IHRoaXMueXN0ZXBbaV1bZF07XG4gICAgICAgICAgICAgICAgY29uc3QgZ2FpbmlkID0gdGhpcy5nYWluc1tpXVtkXTtcbiAgICAgICAgICAgICAgICAvLyBjb21wdXRlIGdhaW4gdXBkYXRlXG4gICAgICAgICAgICAgICAgbGV0IG5ld2dhaW4gPSB0aGlzLnNpZ24oZ2lkKSA9PT0gdGhpcy5zaWduKHNpZCkgPyBnYWluaWQgKiAwLjggOiBnYWluaWQgKyAwLjI7XG4gICAgICAgICAgICAgICAgaWYgKG5ld2dhaW4gPCAwLjAxKVxuICAgICAgICAgICAgICAgICAgICBuZXdnYWluID0gMC4wMTsgLy8gY2xhbXBcbiAgICAgICAgICAgICAgICB0aGlzLmdhaW5zW2ldW2RdID0gbmV3Z2FpbjsgLy8gc3RvcmUgZm9yIG5leHQgdHVyblxuICAgICAgICAgICAgICAgIC8vIGNvbXB1dGUgbW9tZW50dW0gc3RlcCBkaXJlY3Rpb25cbiAgICAgICAgICAgICAgICBjb25zdCBtb212YWwgPSB0aGlzLml0ZXIgPCAyNTAgPyAwLjUgOiAwLjg7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV3c2lkID0gbW9tdmFsICogc2lkIC0gdGhpcy5lcHNpbG9uICogbmV3Z2FpbiAqIGdyYWRbaV1bZF07XG4gICAgICAgICAgICAgICAgdGhpcy55c3RlcFtpXVtkXSA9IG5ld3NpZDsgLy8gcmVtZW1iZXIgdGhlIHN0ZXAgd2UgdG9va1xuICAgICAgICAgICAgICAgIC8vIHN0ZXAhXG4gICAgICAgICAgICAgICAgdGhpcy5ZW2ldW2RdICs9IG5ld3NpZDtcbiAgICAgICAgICAgICAgICB5bWVhbltkXSArPSB0aGlzLllbaV1bZF07IC8vIGFjY3VtdWxhdGUgbWVhbiBzbyB0aGF0IHdlIGNhbiBjZW50ZXIgbGF0ZXJcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyByZXByb2plY3QgWSB0byBiZSB6ZXJvIG1lYW5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGQgPSAwOyBkIDwgdGhpcy5kaW07IGQrKylcbiAgICAgICAgICAgICAgICB0aGlzLllbaV1bZF0gLT0geW1lYW5bZF0gLyBOO1xuICAgICAgICB9XG4gICAgICAgIC8vaWYodGhpcy5pdGVyJTEwMD09PTApIGNvbnNvbGUubG9nKCdpdGVyICcgKyB0aGlzLml0ZXIgKyAnLCBjb3N0OiAnICsgY29zdCk7XG4gICAgICAgIHJldHVybiBjb3N0OyAvLyByZXR1cm4gY3VycmVudCBjb3N0XG4gICAgfVxuICAgIC8vIGZvciBkZWJ1Z2dpbmc6IGdyYWRpZW50IGNoZWNrXG4gICAgZGVidWdHcmFkKCkge1xuICAgICAgICBjb25zdCBOID0gdGhpcy5OO1xuICAgICAgICBjb25zdCBjZyA9IHRoaXMuY29zdEdyYWQodGhpcy5ZKTsgLy8gZXZhbHVhdGUgZ3JhZGllbnRcbiAgICAgICAgLy9jb25zdCBjb3N0ID0gY2cuY29zdDtcbiAgICAgICAgY29uc3QgZ3JhZCA9IGNnLmdyYWQ7XG4gICAgICAgIGNvbnN0IGUgPSAxZS01O1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IE47IGkrKykge1xuICAgICAgICAgICAgZm9yIChsZXQgZCA9IDA7IGQgPCB0aGlzLmRpbTsgZCsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeW9sZCA9IHRoaXMuWVtpXVtkXTtcbiAgICAgICAgICAgICAgICB0aGlzLllbaV1bZF0gPSB5b2xkICsgZTtcbiAgICAgICAgICAgICAgICBjb25zdCBjZzAgPSB0aGlzLmNvc3RHcmFkKHRoaXMuWSk7XG4gICAgICAgICAgICAgICAgdGhpcy5ZW2ldW2RdID0geW9sZCAtIGU7XG4gICAgICAgICAgICAgICAgY29uc3QgY2cxID0gdGhpcy5jb3N0R3JhZCh0aGlzLlkpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGFuYWx5dGljID0gZ3JhZFtpXVtkXTtcbiAgICAgICAgICAgICAgICBjb25zdCBudW1lcmljYWwgPSAoY2cwLmNvc3QgLSBjZzEuY29zdCkgLyAoMiAqIGUpO1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGkgKyAnLCcgKyBkICsgJzogZ3JhZGNoZWNrIGFuYWx5dGljOiAnICsgYW5hbHl0aWMgKyAnIHZzLiBudW1lcmljYWw6ICcgKyBudW1lcmljYWwpO1xuICAgICAgICAgICAgICAgIHRoaXMuWVtpXVtkXSA9IHlvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgcXVBcnI7XG4gICAgLy8gcmV0dXJuIGNvc3QgYW5kIGdyYWRpZW50LCBnaXZlbiBhbiBhcnJhbmdlbWVudFxuICAgIGNvc3RHcmFkKFkpIHtcbiAgICAgICAgY29uc3QgTiA9IHRoaXMuTjtcbiAgICAgICAgY29uc3QgZGltID0gdGhpcy5kaW07IC8vIGRpbSBvZiBvdXRwdXQgc3BhY2VcbiAgICAgICAgY29uc3QgUCA9IHRoaXMuUDtcbiAgICAgICAgY29uc3QgcG11bCA9IHRoaXMuaXRlciA8IDEwMCA/IDQgOiAxOyAvLyB0cmljayB0aGF0IGhlbHBzIHdpdGggbG9jYWwgb3B0aW1hXG4gICAgICAgIC8vIGNvbXB1dGUgY3VycmVudCBRIGRpc3RyaWJ1dGlvbiwgdW5ub3JtYWxpemVkIGZpcnN0XG4gICAgICAgIHRoaXMucXVBcnIgPz89IHRoaXMuemVyb3MoTiAqIE4pO1xuICAgICAgICBsZXQgcXN1bSA9IDAuMDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBOOyBpKyspIHtcbiAgICAgICAgICAgIGZvciAobGV0IGogPSBpICsgMTsgaiA8IE47IGorKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRzdW0gPSBuZXcgQXJyYXkoZGltKS5yZWR1Y2UoKHByZXYsIF8sIGQpID0+IHByZXYgKyBNYXRoLnBvdyhZW2ldW2RdIC0gWVtqXVtkXSwgMiksIDApO1xuICAgICAgICAgICAgICAgIGNvbnN0IHF1ID0gMS4wIC8gKDEuMCArIGRzdW0pOyAvLyBTdHVkZW50IHQtZGlzdHJpYnV0aW9uXG4gICAgICAgICAgICAgICAgdGhpcy5xdUFycltpICogTiArIGpdID0gcXU7XG4gICAgICAgICAgICAgICAgdGhpcy5xdUFycltqICogTiArIGldID0gcXU7XG4gICAgICAgICAgICAgICAgcXN1bSArPSAyICogcXU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gbm9ybWFsaXplIFEgZGlzdHJpYnV0aW9uIHRvIHN1bSB0byAxXG4gICAgICAgIC8vY29uc3QgTk4gPSBOICogTjtcbiAgICAgICAgLy9jb25zdCBRID0gdGhpcy56ZXJvcyhOTik7XG4gICAgICAgIGxldCBjb3N0ID0gMC4wO1xuICAgICAgICBjb25zdCBncmFkID0gbmV3IEFycmF5KE4pLmZpbGwobnVsbCkubWFwKCgpID0+IChuZXcgRmxvYXQzMkFycmF5KGRpbSkpLmZpbGwoMC4wKSk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgTjsgaSsrKSB7XG4gICAgICAgICAgICAvLyBjb25zdCBnc3VtID0gbmV3IEZsb2F0MzJBcnJheShkaW0pLmZpbGwoMC4wKTsgLy8gaW5pdCBncmFkIGZvciBwb2ludCBpXG4gICAgICAgICAgICBmb3IgKGxldCBqID0gaSArIDE7IGogPCBOOyBqKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBRID0gTWF0aC5tYXgodGhpcy5xdUFycltpICogTiArIGpdIC8gcXN1bSwgMWUtMTAwKTtcbiAgICAgICAgICAgICAgICBjb3N0ICs9ICgtUFtpICogTiArIGpdICogTWF0aC5sb2coUSkpICogMjsgLy8gYWNjdW11bGF0ZSBjb3N0ICh0aGUgbm9uLWNvbnN0YW50IHBvcnRpb24gYXQgbGVhc3QuLi4pXG4gICAgICAgICAgICAgICAgY29uc3QgcHJlbXVsdCA9IDQgKiAocG11bCAqIFBbaSAqIE4gKyBqXSAtIFEpICogdGhpcy5xdUFycltpICogTiArIGpdO1xuICAgICAgICAgICAgICAgIC8vY29uc29sZS5sb2cocHJlbXVsdCwgUSwgaSwgaik7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgZCA9IDA7IGQgPCBkaW07IGQrKykge1xuICAgICAgICAgICAgICAgICAgICBncmFkW2ldW2RdICs9IHByZW11bHQgKiAoWVtpXVtkXSAtIFlbal1bZF0pO1xuICAgICAgICAgICAgICAgICAgICBncmFkW2pdW2RdICs9IHByZW11bHQgKiAoWVtqXVtkXSAtIFlbaV1bZF0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vZ3JhZFtpXSA9IGdzdW07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgY29zdCwgZ3JhZCB9O1xuICAgIH1cbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWRDMXpibVV1YW5NaUxDSnpiM1Z5WTJWU2IyOTBJam9pSWl3aWMyOTFjbU5sY3lJNld5SjBMWE51WlM1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRU3hQUVVGUExFVkJRVU1zWVVGQllTeEZRVUZETEUxQlFVMHNiMEpCUVc5Q0xFTkJRVU03UVVGSGFrUXNUVUZCVFN4UFFVRlBMRWxCUVVrN1NVRkRVQ3hWUVVGVkxFTkJRVk03U1VGRGJrSXNSMEZCUnl4RFFVRlRPMGxCUTFvc1QwRkJUeXhEUVVGVE8wbEJRMmhDTEVsQlFVa3NSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRWQ3hEUVVGRExFTkJRVlU3U1VGRFdDeERRVUZETEVOQlFXZENPMGxCUTJwQ0xFTkJRVU1zUTBGQlV6dEpRVU5XTEV0QlFVc3NRMEZCVXp0SlFVTmtMRXRCUVVzc1EwRkJVenRKUVVOa0xFMUJRVTBzUjBGQmFVSXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVOdVF5eE5RVUZOTEVOQlFVTXNVMEZCWXl4RlFVRkZMRTlCUVZrN1VVRkRla01zU1VGQlNTeERRVUZETEZOQlFWTTdXVUZCUlN4TlFVRk5MRTlCUVU4c1NVRkJTU3hyUWtGQmEwSXNRMEZCUXp0SlFVTjBSQ3hEUVVGRE8wbEJSVVFzWlVGQlpUdEpRVU5RTEUxQlFVMHNRMEZCUXl4SFFVRjFRaXhGUVVGRkxFdEJRV0VzUlVGQlJTeFZRVUZsTzFGQlEzQkZMRWxCUVVrc1IwRkJSeXhEUVVGRExHTkJRV01zUTBGQlF5eExRVUZMTEVOQlFVTTdXVUZETTBJc1QwRkJUeXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdPMWxCUld4Q0xFOUJRVThzVlVGQlZTeERRVUZETzBsQlEzUkNMRU5CUVVNN1NVRkZReXh6UkVGQmMwUTdTVUZET1VNc1QwRkJUeXhIUVVGSExFdEJRVXNzUTBGQlF6dEpRVU5vUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhEUVVGRE8wbEJRM0pDTEZkQlFWYzdVVUZEVkN4SlFVRkpMRWxCUVVrc1EwRkJReXhQUVVGUExFVkJRVVU3V1VGRGFFSXNTVUZCU1N4RFFVRkRMRTlCUVU4c1IwRkJSeXhMUVVGTExFTkJRVU03V1VGRGNrSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRE8xTkJRM0JDTzFGQlEwUXNUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRhRU1zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhOUVVGTkxFVkJRVVVzUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEYUVNc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xRkJRM2hDTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF6dFpRVUZGTEU5QlFVOHNTVUZCU1N4RFFVRkRMRmRCUVZjc1JVRkJSU3hEUVVGRE8xRkJRMmhFTEUxQlFVMHNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTXhReXhKUVVGSkxFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXh0UkVGQmJVUTdVVUZEZUVVc1NVRkJTU3hEUVVGRExFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTTdVVUZEY0VJc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzBsQlEyWXNRMEZCUXp0SlFVVkVMRGhDUVVFNFFqdEpRVU4wUWl4TFFVRkxMRU5CUVVNc1JVRkJWU3hGUVVGRkxFZEJRVmM3VVVGRGJrTXNUMEZCVHl4RlFVRkZMRWRCUVVjc1NVRkJTU3hEUVVGRExGZEJRVmNzUlVGQlJTeEhRVUZITEVkQlFVY3NRMEZCUXp0SlFVTjJReXhEUVVGRE8wbEJSVVFzT0VSQlFUaEVPMGxCUTNSRUxFdEJRVXNzUTBGQlF5eERRVUZUTzFGQlEzSkNMRWxCUVVrc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eExRVUZMTEZkQlFWY3NTVUZCU1N4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRVVVzVDBGQlR5eEpRVUZKTEZsQlFWa3NSVUZCUlN4RFFVRkRPMUZCUTNSRkxFbEJRVWtzVDBGQlR5eFhRVUZYTEV0QlFVc3NWMEZCVnl4RlFVRkZPMWxCUTNSRExEQkNRVUV3UWp0WlFVTXhRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOb1F5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlR0blFrRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWxCUTNaRExFOUJRVThzUjBGQlJ5eERRVUZETzFOQlExbzdZVUZCVFR0WlFVTk1MRTlCUVU4c1NVRkJTU3haUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl3d1FrRkJNRUk3VTBGRGRrUTdTVUZEU0N4RFFVRkRPMGxCUlVRc01rUkJRVEpFTzBsQlF6TkVMQ3RDUVVFclFqdEpRVU4yUWl4UFFVRlBMRU5CUVVNc1EwRkJVeXhGUVVGRkxFTkJRVk1zUlVGQlJTeERRVUZWTzFGQlF6bERMRTFCUVUwc1NVRkJTU3hIUVVGSExFOUJRVThzUTBGQlF5eExRVUZMTEZkQlFWY3NRMEZCUXp0UlFVTjBReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEVsQlFVa3NTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eEpRVUZKTEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRMjVGTEVsQlFVa3NTVUZCU1N4RlFVRkZPMWxCUTFJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVU3WjBKQlEzaENMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEZsQlFWa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVMEZEZEVNN1lVRkJUVHRaUVVOTUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdaMEpCUXpGQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTzI5Q1FVTjRRaXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEhRVUZITEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNN1lVRkRia003VTBGRFJqdFJRVU5FTEU5QlFVOHNRMEZCUXl4RFFVRkRPMGxCUTFnc1EwRkJRenRKUVVWRUxEQkRRVUV3UXp0SlFVTnNReXhGUVVGRkxFTkJRVU1zUlVGQldTeEZRVUZGTEVWQlFWazdVVUZEYmtNc1RVRkJUU3hEUVVGRExFZEJRVWNzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXp0UlFVTndRaXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEVml4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRekZDTEUxQlFVMHNSMEZCUnl4SFFVRkhMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5zUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZEYkVJc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETzFOQlEyaERPMUZCUTBRc1QwRkJUeXhEUVVGRExFTkJRVU03U1VGRFdDeERRVUZETzBsQlJVUXNaMFJCUVdkRU8wbEJRM2hETEVsQlFVa3NRMEZCUXl4RFFVRjVRanRSUVVOd1F5eE5RVUZOTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRE8xRkJRMjVDTEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc05FSkJRVFJDTzFGQlF6VkVMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3V1VGRE1VSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3WjBKQlF6bENMRTFCUVUwc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVNNVFpeEpRVUZKTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdaMEpCUTNCQ0xFbEJRVWtzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dGhRVU55UWp0VFFVTkdPMUZCUTBRc1QwRkJUeXhKUVVGSkxFTkJRVU03U1VGRFpDeERRVUZETzBsQlJVMHNWMEZCVnl4RFFVRkRMRTlCUVdVN1VVRkRhRU1zU1VGQlNTeFBRVUZQTEVsQlFVa3NTVUZCU1R0WlFVTnFRaXhQUVVGUExFZEJRVWNzUTBGQlF6dGhRVU5TTEVsQlFVa3NUMEZCVHl4SlFVRkpMRWxCUVVrN1dVRkRkRUlzVDBGQlR5eEZRVUZGTEVOQlFVTTdZVUZEVUN4SlFVRkpMRTlCUVU4c1NVRkJTU3hKUVVGSk8xbEJRM1JDTEU5QlFVOHNSVUZCUlN4RFFVRkRPenRaUVVWV0xFOUJRVThzUlVGQlJTeERRVUZETzBsQlEyUXNRMEZCUXp0SlFVVkVMRzFEUVVGdFF6dEpRVU16UWl4SFFVRkhMRU5CUVVNc1EwRkJaU3hGUVVGRkxGVkJRV3RDTEVWQlFVVXNSMEZCVnl4RlFVRkZMRTlCUVdVN1VVRkRNMFVzSzBSQlFTdEVPMUZCUXk5RUxEUkNRVUUwUWp0UlFVTTFRaXh4UlVGQmNVVTdVVUZEY2tVc1RVRkJUU3hQUVVGUExFZEJRVWNzWVVGQllTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRPMUZCUTNaRExFMUJRVTBzVTBGQlV5eEhRVUZITEVsQlFVa3NXVUZCV1N4RFFVRkRMRTlCUVU4c1IwRkJSeXhQUVVGUExFTkJRVU1zUTBGQlF6dFJRVU4wUkN4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUMEZCVHl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRMmhETEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NUMEZCVHl4RlFVRkZMRU5CUVVNc1JVRkJSVHRuUWtGRGJFTXNVMEZCVXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhQUVVGUExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhQUVVGUExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0VFFVTTVSVHRSUVVORUxFMUJRVTBzUTBGQlF5eEhRVUZITEU5QlFVOHNRMEZCUXp0UlFVTnNRaXhOUVVGTkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExFTkJRVU1zYVVOQlFXbERPMUZCUTNaRkxFMUJRVTBzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNLMEpCUVN0Q08xRkJRelZFTEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4clEwRkJhME03VVVGRE9VUXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVNeFFpeEpRVUZKTEU5QlFVOHNSMEZCUnl4RFFVRkRMRkZCUVZFc1EwRkJRenRaUVVONFFpeEpRVUZKTEU5QlFVOHNSMEZCUnl4UlFVRlJMRU5CUVVNN1dVRkRka0lzU1VGQlNTeEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc05rSkJRVFpDTzFsQlF6TkRMRWxCUVVrc1NVRkJTU3hIUVVGSExFdEJRVXNzUTBGQlF6dFpRVU5xUWl4TlFVRk5MRkZCUVZFc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4WFFVRlhMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTTdXVUZGTTBRc01FUkJRVEJFTzFsQlF6RkVMSGxFUVVGNVJEdFpRVU42UkN4SlFVRkpMRWRCUVVjc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRFdpeFBRVUZQTEVOQlFVTXNTVUZCU1N4RlFVRkZPMmRDUVVOYUxGZEJRVmM3WjBKQlJWZ3NjVVJCUVhGRU8yZENRVU55UkN4SlFVRkpMRWxCUVVrc1IwRkJSeXhIUVVGSExFTkJRVU03WjBKQlEyWXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHR2UWtGRE1VSXNUVUZCVFN4RlFVRkZMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVVXNVMEZCVXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNN2IwSkJRMnBGTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU03YjBKQlEySXNTVUZCU1N4SlFVRkpMRVZCUVVVc1EwRkJRenRwUWtGRFdqdG5Ra0ZEUkN4clEwRkJhME03WjBKQlEyeERMRWxCUVVrc1MwRkJTeXhIUVVGSExFZEJRVWNzUTBGQlF6dG5Ra0ZEYUVJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdHZRa0ZETVVJc1NVRkJTU3hGUVVGRkxFTkJRVU03YjBKQlExQXNTVUZCU1N4SlFVRkpMRXRCUVVzc1EwRkJRenQzUWtGRFdpeEZRVUZGTEVkQlFVY3NRMEZCUXl4RFFVRkRPenQzUWtGRlVDeEZRVUZGTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dHZRa0ZGZEVJc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXp0dlFrRkRZaXhKUVVGSkxFVkJRVVVzUjBGQlJ5eEpRVUZKTzNkQ1FVRkZMRXRCUVVzc1NVRkJTU3hGUVVGRkxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenRwUWtGRE0wTTdaMEpCUlVRc09FSkJRVGhDTzJkQ1FVTTVRaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eFBRVUZQTEVWQlFVVTdiMEpCUTI1Q0xHdEVRVUZyUkR0dlFrRkRiRVFzYlVWQlFXMUZPMjlDUVVOdVJTeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc2NVSkJRWEZDTzI5Q1FVTnlReXhKUVVGSkxFOUJRVThzUzBGQlN5eFJRVUZSTzNkQ1FVRkZMRWxCUVVrc1IwRkJSeXhKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZET3p0M1FrRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF5eEpRVUZKTEVkQlFVY3NUMEZCVHl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8ybENRVU0zUlR0eFFrRkJUVHR2UWtGRFRDdzJRMEZCTmtNN2IwSkJRemRETEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNN2IwSkJRMllzU1VGQlNTeFBRVUZQTEV0QlFVc3NRMEZCUXl4UlFVRlJPM2RDUVVGRkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPenQzUWtGQlRTeEpRVUZKTEVkQlFVY3NRMEZCUXl4SlFVRkpMRWRCUVVjc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzJsQ1FVTTVSVHRuUWtGRlJDdzRSRUZCT0VRN1owSkJRemxFTEVkQlFVY3NSVUZCUlN4RFFVRkRPMmRDUVVOT0xFbEJRVWtzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4TFFVRkxMRWRCUVVjc1QwRkJUeXhEUVVGRExFZEJRVWNzUjBGQlJ6dHZRa0ZCUlN4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRE8yZENRVU5xUkN4SlFVRkpMRWRCUVVjc1NVRkJTU3hSUVVGUk8yOUNRVUZGTEVsQlFVa3NSMEZCUnl4SlFVRkpMRU5CUVVNN1lVRkRiRU03V1VGRlJDd3dSMEZCTUVjN1dVRkRNVWNzZVVOQlFYbERPMWxCUTNwRExFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTzJkQ1FVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFRRVU53UkN4RFFVRkRMREpDUVVFeVFqdFJRVVUzUWl4M1JFRkJkMFE3VVVGRGVFUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRMMElzVFVGQlRTeEZRVUZGTEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRSUVVOcVFpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXpGQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTzJkQ1FVTjRRaXhKUVVGSkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RlFVRkZMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03VTBGRE1VVTdVVUZGUkN4UFFVRlBMRWxCUVVrc1EwRkJRenRKUVVOa0xFTkJRVU03U1VGRlJDeHJRa0ZCYTBJN1NVRkRWaXhKUVVGSkxFTkJRVU1zUTBGQlV5eEpRVUZKTEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVVU1UkN4WlFVRlpMRWRCUVhWQ08xRkJRMnBETEVkQlFVY3NSMEZCUnl4SFFVRkhMRWxCUVVrc1JVRkJSU3hEUVVGRE8xRkJRMmhDTEVsQlFVa3NRMEZCUXl4VlFVRlZMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVWQlFVVXNXVUZCV1N4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zZDBOQlFYZERPMUZCUXpsR0xFbEJRVWtzUTBGQlF5eEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFVkJRVVVzUzBGQlN5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc2MwSkJRWE5DTzFGQlF6ZEVMRWxCUVVrc1EwRkJReXhQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRVZCUVVVc1UwRkJVeXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNaMEpCUVdkQ08xRkJRMmhGTEVsQlFVa3NRMEZCUXl4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVWQlFVVXNVVUZCVVN4RlFVRkZMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETERCQ1FVRXdRanRKUVVOdVJpeERRVUZETzBsQlJVUXNkVVJCUVhWRU8wbEJRM1pFTEhWRVFVRjFSRHRKUVVOb1JDeFhRVUZYTEVOQlFVTXNRMEZCYjBJN1VVRkRja01zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJRenRSUVVOdVFpeE5RVUZOTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETzFGQlEzUkNMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4MVEwRkJkVU1zUTBGQlF5eERRVUZETzFGQlF6VkVMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4dlEwRkJiME1zUTBGQlF5eERRVUZETzFGQlEzcEVMRTFCUVUwc1MwRkJTeXhIUVVGSExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXdyUTBGQkswTTdVVUZETTBVc1NVRkJTU3hEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRXRCUVVzc1JVRkJSU3hKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVsQlFVa3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExHMUNRVUZ0UWp0UlFVTjJSU3hKUVVGSkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMR3REUVVGclF6dFJRVU01UXl4SlFVRkpMRU5CUVVNc1dVRkJXU3hGUVVGRkxFTkJRVU1zUTBGQlF5eGxRVUZsTzBsQlEzUkRMRU5CUVVNN1NVRkZSQ3d3UkVGQk1FUTdTVUZETVVRc2MwSkJRWE5DTzBsQlEzUkNMREJGUVVFd1JUdEpRVU51UlN4WlFVRlpMRU5CUVVNc1EwRkJaU3hGUVVGRkxFOUJRV1U3VVVGRGJFUXNUVUZCVFN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF6dFJRVU51UWl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNkVU5CUVhWRExFTkJRVU1zUTBGQlF6dFJRVU0xUkN3MFEwRkJORU03VVVGRE5VTXNkME5CUVhkRE8xRkJRM2hETEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc2NVSkJRWEZDTEVOQlFVTXNRMEZCUXp0UlFVTndReXhKUVVGSkxFTkJRVU1zUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhGUVVGRkxFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVGRE8xRkJRM0pFTEU5QlFVOHNRMEZCUXl4UFFVRlBMRU5CUVVNc2NVSkJRWEZDTEVOQlFVTXNRMEZCUXp0UlFVTjJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eEhRVUZITEU5QlFVOHNRMEZCUXp0UlFVTnFRaXhKUVVGSkxFTkJRVU1zV1VGQldTeEZRVUZGTEVOQlFVTXNRMEZCUXl4bFFVRmxPMGxCUTNSRExFTkJRVU03U1VGRlJDeDVRMEZCZVVNN1NVRkRiRU1zV1VGQldUdFJRVU5xUWl4dlEwRkJiME03VVVGRGNFTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRVZCUVVVc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNaVUZCWlR0UlFVTjRSQ3hKUVVGSkxFTkJRVU1zUzBGQlN5eEhRVUZITEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUlVGQlJTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zTmtSQlFUWkVPMUZCUXk5SExFbEJRVWtzUTBGQlF5eExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVsQlFVa3NRMEZCUXl4SFFVRkhMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eDFRa0ZCZFVJN1VVRkRla1VzU1VGQlNTeERRVUZETEVsQlFVa3NSMEZCUnl4RFFVRkRMRU5CUVVNN1NVRkRhRUlzUTBGQlF6dEpRVVZFTEhGRFFVRnhRenRKUVVNNVFpeFhRVUZYTzFGQlEyaENMRTlCUVU4c1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5vUWl4RFFVRkRPMGxCUlVRc2FVVkJRV2xGTzBsQlF6RkVMRWxCUVVrN1VVRkRWQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXp0UlFVTm1MRTFCUVUwc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEYWtJc1RVRkJUU3hGUVVGRkxFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eHZRa0ZCYjBJN1VVRkRkRVFzVFVGQlRTeEpRVUZKTEVkQlFVY3NSVUZCUlN4RFFVRkRMRWxCUVVrc1EwRkJRenRSUVVOeVFpeE5RVUZOTEVsQlFVa3NSMEZCUnl4RlFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRE8xRkJSWEpDTEhkQ1FVRjNRanRSUVVONFFpeE5RVUZOTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0UlFVTnVReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFsQlF6RkNMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzJkQ1FVTnFReXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlEzWkNMRTFCUVUwc1IwRkJSeXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlF6ZENMRTFCUVUwc1RVRkJUU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlJXaERMSE5DUVVGelFqdG5Ra0ZEZEVJc1NVRkJTU3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1MwRkJTeXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRWRCUVVjc1IwRkJSeXhEUVVGRE8yZENRVU01UlN4SlFVRkpMRTlCUVU4c1IwRkJSeXhKUVVGSk8yOUNRVUZGTEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhSUVVGUk8yZENRVU0xUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRTlCUVU4c1EwRkJReXhEUVVGRExITkNRVUZ6UWp0blFrRkZiRVFzYTBOQlFXdERPMmRDUVVOc1F5eE5RVUZOTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU03WjBKQlF6TkRMRTFCUVUwc1RVRkJUU3hIUVVGSExFMUJRVTBzUjBGQlJ5eEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRTlCUVU4c1IwRkJSeXhQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU5zUlN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRTFCUVUwc1EwRkJReXhEUVVGRExEUkNRVUUwUWp0blFrRkZka1FzVVVGQlVUdG5Ra0ZEVWl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRTFCUVUwc1EwRkJRenRuUWtGRmRrSXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5dzRRMEZCT0VNN1lVRkRla1U3VTBGRFJqdFJRVVZFTERoQ1FVRTRRanRSUVVNNVFpeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMWxCUXpGQ0xFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNSVUZCUlR0blFrRkRMMElzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xTkJRMmhETzFGQlJVUXNOa1ZCUVRaRk8xRkJRemRGTEU5QlFVOHNTVUZCU1N4RFFVRkRMRU5CUVVNc2MwSkJRWE5DTzBsQlEzSkRMRU5CUVVNN1NVRkZSQ3huUTBGQlowTTdTVUZEZWtJc1UwRkJVenRSUVVOa0xFMUJRVTBzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkZha0lzVFVGQlRTeEZRVUZGTEVkQlFVY3NTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4dlFrRkJiMEk3VVVGRGRFUXNkVUpCUVhWQ08xRkJRM1pDTEUxQlFVMHNTVUZCU1N4SFFVRkhMRVZCUVVVc1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRmNrSXNUVUZCVFN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRE8xRkJRMllzUzBGQlN5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0WlFVTXhRaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFZEJRVWNzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0blFrRkRha01zVFVGQlRTeEpRVUZKTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkZNVUlzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVONFFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkZiRU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVONFFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkZiRU1zVFVGQlRTeFJRVUZSTEVkQlFVY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJkQ1FVTTFRaXhOUVVGTkxGTkJRVk1zUjBGQlJ5eERRVUZETEVkQlFVY3NRMEZCUXl4SlFVRkpMRWRCUVVjc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU5zUkN4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUjBGQlJ5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMSGRDUVVGM1FpeEhRVUZITEZGQlFWRXNSMEZCUnl4clFrRkJhMElzUjBGQlJ5eFRRVUZUTEVOQlFVTXNRMEZCUXp0blFrRkZhRWNzU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTTdZVUZEY2tJN1UwRkRSanRKUVVOSUxFTkJRVU03U1VGRlR5eExRVUZMTEVOQlFXZENPMGxCUXpkQ0xHbEVRVUZwUkR0SlFVTXhReXhSUVVGUkxFTkJRVU1zUTBGQllUdFJRVU16UWl4TlFVRk5MRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEycENMRTFCUVUwc1IwRkJSeXhIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4elFrRkJjMEk3VVVGRE5VTXNUVUZCVFN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dFJRVVZxUWl4TlFVRk5MRWxCUVVrc1IwRkJSeXhKUVVGSkxFTkJRVU1zU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4eFEwRkJjVU03VVVGRk0wVXNjVVJCUVhGRU8xRkJRM0pFTEVsQlFVa3NRMEZCUXl4TFFVRkxMRXRCUVVzc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRha01zU1VGQlNTeEpRVUZKTEVkQlFVY3NSMEZCUnl4RFFVRkRPMUZCUTJZc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU14UWl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdG5Ra0ZET1VJc1RVRkJUU3hKUVVGSkxFZEJRVWNzU1VGQlNTeExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zU1VGQlNTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlF6ZEdMRTFCUVUwc1JVRkJSU3hIUVVGSExFZEJRVWNzUjBGQlJ5eERRVUZETEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExIbENRVUY1UWp0blFrRkRlRVFzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXp0blFrRkRNMElzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXp0blFrRkRNMElzU1VGQlNTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNN1lVRkRhRUk3VTBGRFJqdFJRVU5FTEhWRFFVRjFRenRSUVVOMlF5eHRRa0ZCYlVJN1VVRkRia0lzTWtKQlFUSkNPMUZCUXpOQ0xFbEJRVWtzU1VGQlNTeEhRVUZITEVkQlFVY3NRMEZCUXp0UlFVTm1MRTFCUVUwc1NVRkJTU3hIUVVGSExFbEJRVWtzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxGbEJRVmtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEyeEdMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3V1VGRE1VSXNlVVZCUVhsRk8xbEJRM3BGTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yZENRVU01UWl4TlFVRk5MRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRVZCUVVVc1RVRkJUU3hEUVVGRExFTkJRVU03WjBKQlEzcEVMRWxCUVVrc1NVRkJTU3hEUVVGRExFTkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEhsRVFVRjVSRHRuUWtGRGNrY3NUVUZCVFN4UFFVRlBMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zU1VGQlNTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGRGRFVXNaME5CUVdkRE8yZENRVU5vUXl4TFFVRkxMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETEVkQlFVY3NSMEZCUnl4RlFVRkZMRU5CUVVNc1JVRkJSU3hGUVVGRk8yOUNRVU0xUWl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NUMEZCVHl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMjlDUVVNMVF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzVDBGQlR5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJsQ1FVTTNRenRoUVVOR08xbEJRMFFzYVVKQlFXbENPMU5CUTJ4Q08xRkJSVVFzVDBGQlR5eEZRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVNc1EwRkJRenRKUVVOMFFpeERRVUZETzBOQlEwb2lMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUpwYlhCdmNuUWdlMlJ0VEdsdVpXRnlTVzVrWlhoOUlHWnliMjBnSnk0dUwyUnBjM1JoYm1ObExXMWhkSEpwZUNjN1hHNWNibHh1Wlhod2IzSjBJR05zWVhOeklGUlRUa1VnZTF4dUlDQndjbWwyWVhSbElIQmxjbkJzWlhocGRIazZJRzUxYldKbGNqdGNiaUFnY0hKcGRtRjBaU0JrYVcwNklHNTFiV0psY2p0Y2JpQWdjSEpwZG1GMFpTQmxjSE5wYkc5dU9pQnVkVzFpWlhJN1hHNGdJSEJ5YVhaaGRHVWdhWFJsY2lBOUlEQTdYRzRnSUhCeWFYWmhkR1VnVGlFNklHNTFiV0psY2p0Y2JpQWdjSEpwZG1GMFpTQlFJVG9nUm14dllYUXpNa0Z5Y21GNU8xeHVJQ0J3Y21sMllYUmxJRmtoT2lCaGJubGJYVHRjYmlBZ2NISnBkbUYwWlNCbllXbHVjeUU2SUdGdWVWdGRPMXh1SUNCd2NtbDJZWFJsSUhsemRHVndJVG9nWVc1NVcxMDdYRzRnSUhCeWFYWmhkR1VnY21GdVpHOXRPaUFvS1NBOVBpQnVkVzFpWlhJZ1BTQk5ZWFJvTG5KaGJtUnZiVHRjYmlBZ2NISnBkbUYwWlNCaGMzTmxjblFvWTI5dVpHbDBhVzl1T2lCaGJua3NJRzFsYzNOaFoyVTZJR0Z1ZVNrZ2UxeHVJQ0FnSUdsbUlDZ2hZMjl1WkdsMGFXOXVLU0IwYUhKdmR5QnRaWE56WVdkbElIeDhJQ2RCYzNObGNuUnBiMjRnWm1GcGJHVmtKenRjYmlBZ2ZWeHVYRzRnSUM4dklITjViblJoZUNCemRXZGhjbHh1SUNCd2NtbDJZWFJsSUdkbGRHOXdkQ2h2Y0hRNklIdGJYem9nYzNSeWFXNW5YVG9nWVc1NWZTd2dabWxsYkdRNklITjBjbWx1Wnl3Z1pHVm1ZWFZzZEhaaGJEb2dZVzU1S1NCN1hHNGdJQ0FnYVdZZ0tHOXdkQzVvWVhOUGQyNVFjbTl3WlhKMGVTaG1hV1ZzWkNrcFhHNGdJQ0FnSUNCeVpYUjFjbTRnYjNCMFcyWnBaV3hrWFR0Y2JpQWdJQ0JsYkhObFhHNGdJQ0FnSUNCeVpYUjFjbTRnWkdWbVlYVnNkSFpoYkR0Y2JpQWdmVnh1WEc0Z0lDQWdMeThnY21WMGRYSnVJREFnYldWaGJpQjFibWwwSUhOMFlXNWtZWEprSUdSbGRtbGhkR2x2YmlCeVlXNWtiMjBnYm5WdFltVnlYRzRnSUNBZ2NISnBkbUYwWlNCeVpYUjFjbTVXSUQwZ1ptRnNjMlU3WEc0Z0lDQWdjSEpwZG1GMFpTQjJWbUZzZFdVZ1BTQXdMakE3WEc0Z0lDQWdaMkYxYzNOU1lXNWtiMjBvS1RvZ2JuVnRZbVZ5SUh0Y2JpQWdJQ0FnSUdsbUlDaDBhR2x6TG5KbGRIVnlibFlwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV5WlhSMWNtNVdJRDBnWm1Gc2MyVTdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQjBhR2x6TG5aV1lXeDFaVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQWdJR052Ym5OMElIVWdQU0F5SUNvZ2RHaHBjeTV5WVc1a2IyMG9LU0F0SURFN1hHNGdJQ0FnSUNCamIyNXpkQ0IySUQwZ01pQXFJSFJvYVhNdWNtRnVaRzl0S0NrZ0xTQXhPMXh1SUNBZ0lDQWdZMjl1YzNRZ2NpQTlJSFVnS2lCMUlDc2dkaUFxSUhZN1hHNGdJQ0FnSUNCcFppQW9jaUE5UFQwZ01DQjhmQ0J5SUQ0Z01Ta2djbVYwZFhKdUlIUm9hWE11WjJGMWMzTlNZVzVrYjIwb0tUdGNiaUFnSUNBZ0lHTnZibk4wSUdNZ1BTQk5ZWFJvTG5OeGNuUW9MVElnS2lCTllYUm9MbXh2WnloeUtTQXZJSElwTzF4dUlDQWdJQ0FnZEdocGN5NTJWbUZzZFdVZ1BTQjJJQ29nWXpzZ0x5OGdZMkZqYUdVZ2RHaHBjeUJtYjNJZ2JtVjRkQ0JtZFc1amRHbHZiaUJqWVd4c0lHWnZjaUJsWm1acFkybGxibU41WEc0Z0lDQWdJQ0IwYUdsekxuSmxkSFZ5YmxZZ1BTQjBjblZsTzF4dUlDQWdJQ0FnY21WMGRYSnVJSFVnS2lCak8xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4dklISmxkSFZ5YmlCeVlXNWtiMjBnYm05eWJXRnNJRzUxYldKbGNseHVJQ0FnSUhCeWFYWmhkR1VnY21GdVpHNG9iWFU2SUc1MWJXSmxjaXdnYzNSa09pQnVkVzFpWlhJcElIdGNiaUFnSUNBZ0lISmxkSFZ5YmlCdGRTQXJJSFJvYVhNdVoyRjFjM05TWVc1a2IyMG9LU0FxSUhOMFpEdGNiaUFnSUNCOVhHNWNiaUFnSUNBdkx5QjFkR2xzYVhScGRIa2dkR2hoZENCamNtVmhkR1Z6SUdOdmJuUnBaM1Z2ZFhNZ2RtVmpkRzl5SUc5bUlIcGxjbTl6SUc5bUlITnBlbVVnYmx4dUlDQWdJSEJ5YVhaaGRHVWdlbVZ5YjNNb2Jqb2diblZ0WW1WeUtTQjdYRzRnSUNBZ0lDQnBaaUFvZEhsd1pXOW1JQ2h1S1NBOVBUMGdKM1Z1WkdWbWFXNWxaQ2NnZkh3Z2FYTk9ZVTRvYmlrcElISmxkSFZ5YmlCdVpYY2dSbXh2WVhRek1rRnljbUY1S0NrN1hHNGdJQ0FnSUNCcFppQW9kSGx3Wlc5bUlFRnljbUY1UW5WbVptVnlJRDA5UFNBbmRXNWtaV1pwYm1Wa0p5a2dlMXh1SUNBZ0lDQWdJQ0F2THlCc1lXTnJhVzVuSUdKeWIzZHpaWElnYzNWd2NHOXlkRnh1SUNBZ0lDQWdJQ0JqYjI1emRDQmhjbklnUFNCdVpYY2dSbXh2WVhRek1rRnljbUY1S0c0cE8xeHVJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJRzQ3SUdrckt5a2dZWEp5VzJsZElEMGdNRHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJR0Z5Y2p0Y2JpQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUJ1WlhjZ1JteHZZWFF6TWtGeWNtRjVLRzRwT3lBdkx5QjBlWEJsWkNCaGNuSmhlWE1nWVhKbElHWmhjM1JsY2x4dUlDQWdJQ0FnZlZ4dUlDQWdJSDFjYmx4dUlDQWdJQzh2SUhWMGFXeHBkSGtnZEdoaGRDQnlaWFIxY201eklESmtJR0Z5Y21GNUlHWnBiR3hsWkNCM2FYUm9JSEpoYm1SdmJTQnVkVzFpWlhKelhHNGdJQ0FnTHk4Z2IzSWdkMmwwYUNCMllXeDFaU0J6TENCcFppQndjbTkyYVdSbFpGeHVJQ0FnSUhCeWFYWmhkR1VnY21GdVpHNHlaQ2h1T2lCdWRXMWlaWElzSUdRNklHNTFiV0psY2l3Z2N6ODZJRzUxYldKbGNpa2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ2RYTmxjeUE5SUhSNWNHVnZaaUJ6SUNFOVBTQW5kVzVrWldacGJtVmtKenRjYmlBZ0lDQWdJR052Ym5OMElIZ2dQU0FvYm1WM0lFRnljbUY1S0c0cEtTNW1hV3hzS0c1MWJHd3BMbTFoY0Nnb0tTQTlQaUJ1WlhjZ1JteHZZWFF6TWtGeWNtRjVLR1FwS1R0Y2JpQWdJQ0FnSUdsbUlDaDFjMlZ6S1NCN1hHNGdJQ0FnSUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dianNnYVNzcktWeHVJQ0FnSUNBZ0lDQWdJSGhiYVYwZ1BTQnVaWGNnUm14dllYUXpNa0Z5Y21GNUtHUXBMbVpwYkd3b2N5azdYRzRnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJRzQ3SUdrckt5a2dlMXh1SUNBZ0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdvZ1BTQXdPeUJxSUR3Z1pEc2dhaXNyS1Z4dUlDQWdJQ0FnSUNBZ0lDQWdlRnRwWFZ0cVhTQTlJSFJvYVhNdWNtRnVaRzRvTUM0d0xDQXhaUzAwS1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2NtVjBkWEp1SUhnN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHk4Z1kyOXRjSFYwWlNCTU1pQmthWE4wWVc1alpTQmlaWFIzWldWdUlIUjNieUIyWldOMGIzSnpYRzRnSUNBZ2NISnBkbUYwWlNCc01paDRNVG9nYm5WdFltVnlXMTBzSUhneU9pQnVkVzFpWlhKYlhTa2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ1JDQTlJSGd4TG14bGJtZDBhRHRjYmlBZ0lDQWdJR3hsZENCa0lEMGdNRHRjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnUkRzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJSGd4YVNBOUlIZ3hXMmxkTzF4dUlDQWdJQ0FnSUNCamIyNXpkQ0I0TW1rZ1BTQjRNbHRwWFR0Y2JpQWdJQ0FnSUNBZ1pDQXJQU0FvZURGcElDMGdlREpwS1NBcUlDaDRNV2tnTFNCNE1ta3BPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lDQWdjbVYwZFhKdUlHUTdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ0x5OGdZMjl0Y0hWMFpTQndZV2x5ZDJselpTQmthWE4wWVc1alpTQnBiaUJoYkd3Z2RtVmpkRzl5Y3lCcGJpQllYRzRnSUNBZ2NISnBkbUYwWlNCNGRHOWtLRmc2SUVGeWNtRjVQQ0JCY25KaGVUeHVkVzFpWlhJK0lENHBJSHRjYmlBZ0lDQWdJR052Ym5OMElFNGdQU0JZTG14bGJtZDBhRHRjYmlBZ0lDQWdJR052Ym5OMElHUnBjM1FnUFNCMGFHbHpMbnBsY205ektFNGdLaUJPS1RzZ0x5OGdZV3hzYjJOaGRHVWdZMjl1ZEdsbmRXOTFjeUJoY25KaGVWeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQk9PeUJwS3lzcElIdGNiaUFnSUNBZ0lDQWdabTl5SUNoc1pYUWdhaUE5SUdrZ0t5QXhPeUJxSUR3Z1Rqc2dhaXNyS1NCN1hHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1pDQTlJSFJvYVhNdWJESW9XRnRwWFN3Z1dGdHFYU2s3WEc0Z0lDQWdJQ0FnSUNBZ1pHbHpkRnRwSUNvZ1RpQXJJR3BkSUQwZ1pEdGNiaUFnSUNBZ0lDQWdJQ0JrYVhOMFcyb2dLaUJPSUNzZ2FWMGdQU0JrTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOVhHNGdJQ0FnSUNCeVpYUjFjbTRnWkdsemREdGNiaUFnSUNCOVhHNWNiaUFnSUNCd2RXSnNhV01nWjJWMFNYUmxjbE5wZW1Vb2NtOTNVMmw2WlRvZ2JuVnRZbVZ5S1NCN1hHNGdJQ0FnSUNCcFppQW9jbTkzVTJsNlpTQThQU0F5TURBd0tWeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z01UQXdPMXh1SUNBZ0lDQWdaV3h6WlNCcFppQW9jbTkzVTJsNlpTQThQU0F6TURBd0tWeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z09UQTdYRzRnSUNBZ0lDQmxiSE5sSUdsbUlDaHliM2RUYVhwbElEdzlJRFV3TURBcFhHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBNE1EdGNiaUFnSUNBZ0lHVnNjMlZjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRGN3TzF4dUlDQWdJSDFjYmx4dUlDQWdJQzh2SUdOdmJYQjFkR1VnS0hCZmUybDhhbjBnS3lCd1gzdHFmR2w5S1M4b01tNHBYRzRnSUNBZ2NISnBkbUYwWlNCa01uQW9SRG9nUm14dllYUXpNa0Z5Y21GNUxDQndaWEp3YkdWNGFYUjVPaUJ1ZFcxaVpYSXNJSFJ2YkRvZ2JuVnRZbVZ5TENCeWIzZFRhWHBsT2lCdWRXMWlaWElwSUh0Y2JpQWdJQ0FnSUM4dklHTnZibk4wSUc1bUlEMGdUV0YwYUM1emNYSjBLRVF1YkdWdVozUm9LVHNnTHk4Z2RHaHBjeUJpWlhSMFpYSWdZbVVnWVc0Z2FXNTBaV2RsY2x4dUlDQWdJQ0FnTHk4Z1kyOXVjM1FnYmlBOUlFMWhkR2d1Wm14dmIzSW9ibVlwTzF4dUlDQWdJQ0FnTHk4Z2RHaHBjeTVoYzNObGNuUW9iaUE5UFQwZ2JtWXNJQ2RFSUhOb2IzVnNaQ0JvWVhabElITnhkV0Z5WlNCdWRXMWlaWElnYjJZZ1pXeGxiV1Z1ZEhNdUp5azdYRzRnSUNBZ0lDQmpiMjV6ZENCcGJtUmxlR1Z5SUQwZ1pHMU1hVzVsWVhKSmJtUmxlQ2h5YjNkVGFYcGxLVHRjYmlBZ0lDQWdJR052Ym5OMElHUnBjM1JoYm1ObGN5QTlJRzVsZHlCR2JHOWhkRE15UVhKeVlYa29jbTkzVTJsNlpTQXFJSEp2ZDFOcGVtVXBPMXh1SUNBZ0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0J5YjNkVGFYcGxPeUJwS3lzcElIdGNiaUFnSUNBZ0lDQWdabTl5SUNoc1pYUWdhaUE5SUdrZ0t5QXhPeUJxSUR3Z2NtOTNVMmw2WlRzZ2Fpc3JLVnh1SUNBZ0lDQWdJQ0FnSUdScGMzUmhibU5sYzF0cElDb2djbTkzVTJsNlpTQXJJR3BkSUQwZ1pHbHpkR0Z1WTJWelcyb2dLaUJ5YjNkVGFYcGxJQ3NnYVYwZ1BTQkVXMmx1WkdWNFpYSW9hU3dnYWlsZE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ1kyOXVjM1FnYmlBOUlISnZkMU5wZW1VN1hHNGdJQ0FnSUNCamIyNXpkQ0JvVkdGeVoyVjBJRDBnVFdGMGFDNXNiMmNvY0dWeWNHeGxlR2wwZVNrN0lDOHZJSFJoY21kbGRDQmxiblJ5YjNCNUlHOW1JR1JwYzNSeWFXSjFkR2x2Ymx4dUlDQWdJQ0FnWTI5dWMzUWdVQ0E5SUhSb2FYTXVlbVZ5YjNNb2JpQXFJRzRwT3lBdkx5QjBaVzF3YjNKaGNua2djSEp2WW1GaWFXeHBkSGtnYldGMGNtbDRYRzRnSUNBZ0lDQmpiMjV6ZENCd2NtOTNJRDBnZEdocGN5NTZaWEp2Y3lodUtUc2dMeThnWVNCMFpXMXdiM0poY25rZ2MzUnZjbUZuWlNCamIyMXdZWEowYldWdWRGeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQnVPeUJwS3lzcElIdGNiaUFnSUNBZ0lDQWdiR1YwSUdKbGRHRnRhVzRnUFNBdFNXNW1hVzVwZEhrN1hHNGdJQ0FnSUNBZ0lHeGxkQ0JpWlhSaGJXRjRJRDBnU1c1bWFXNXBkSGs3WEc0Z0lDQWdJQ0FnSUd4bGRDQmlaWFJoSUQwZ01Uc2dMeThnYVc1cGRHbGhiQ0IyWVd4MVpTQnZaaUJ3Y21WamFYTnBiMjVjYmlBZ0lDQWdJQ0FnYkdWMElHUnZibVVnUFNCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdiV0Y0ZEhKcFpYTWdQU0JOWVhSb0xtWnNiMjl5S0hSb2FYTXVaMlYwU1hSbGNsTnBlbVVvY205M1UybDZaU2tnTHlBMUtUdGNibHh1SUNBZ0lDQWdJQ0F2THlCd1pYSm1iM0p0SUdKcGJtRnllU0J6WldGeVkyZ2dkRzhnWm1sdVpDQmhJSE4xYVhSaFlteGxJSEJ5WldOcGMybHZiaUJpWlhSaFhHNGdJQ0FnSUNBZ0lDOHZJSE52SUhSb1lYUWdkR2hsSUdWdWRISnZjSGtnYjJZZ2RHaGxJR1JwYzNSeWFXSjFkR2x2YmlCcGN5QmhjSEJ5YjNCeWFXRjBaVnh1SUNBZ0lDQWdJQ0JzWlhRZ2JuVnRJRDBnTUR0Y2JpQWdJQ0FnSUNBZ2QyaHBiR1VnS0NGa2IyNWxLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0x5OWtaV0oxWjJkbGNqdGNibHh1SUNBZ0lDQWdJQ0FnSUM4dklHTnZiWEIxZEdVZ1pXNTBjbTl3ZVNCaGJtUWdhMlZ5Ym1Wc0lISnZkeUIzYVhSb0lHSmxkR0VnY0hKbFkybHphVzl1WEc0Z0lDQWdJQ0FnSUNBZ2JHVjBJSEJ6ZFcwZ1BTQXdMakE3WEc0Z0lDQWdJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FpQTlJREE3SUdvZ1BDQnVPeUJxS3lzcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJSEJxSUQwZ2FTQTlQVDBnYWlBL0lEQWdPaUJOWVhSb0xtVjRjQ2d0SUdScGMzUmhibU5sYzF0cElDb2diaUFySUdwZElDb2dZbVYwWVNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0J3Y205M1cycGRJRDBnY0dvN1hHNGdJQ0FnSUNBZ0lDQWdJQ0J3YzNWdElDczlJSEJxTzF4dUlDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0F2THlCdWIzSnRZV3hwZW1VZ2NDQmhibVFnWTI5dGNIVjBaU0JsYm5SeWIzQjVYRzRnSUNBZ0lDQWdJQ0FnYkdWMElHNUlaWEpsSUQwZ01DNHdPMXh1SUNBZ0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdvZ1BTQXdPeUJxSUR3Z2Jqc2dhaXNyS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JzWlhRZ2NHbzdYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9jSE4xYlNBOVBUMGdNQ2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdjR29nUFNBd08xeHVJQ0FnSUNBZ0lDQWdJQ0FnWld4elpWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCd2FpQTlJSEJ5YjNkYmFsMGdMeUJ3YzNWdE8xeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCd2NtOTNXMnBkSUQwZ2NHbzdYRzRnSUNBZ0lDQWdJQ0FnSUNCcFppQW9jR29nUGlBeFpTMDNLU0J1U0dWeVpTQXRQU0J3YWlBcUlFMWhkR2d1Ykc5bktIQnFLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdJQ0F2THlCaFpHcDFjM1FnWW1WMFlTQmlZWE5sWkNCdmJpQnlaWE4xYkhSY2JpQWdJQ0FnSUNBZ0lDQnBaaUFvYmtobGNtVWdQaUJvVkdGeVoyVjBLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQXZMeUJsYm5SeWIzQjVJSGRoY3lCMGIyOGdhR2xuYUNBb1pHbHpkSEpwWW5WMGFXOXVJSFJ2YnlCa2FXWm1kWE5sS1Z4dUlDQWdJQ0FnSUNBZ0lDQWdMeThnYzI4Z2QyVWdibVZsWkNCMGJ5QnBibU55WldGelpTQjBhR1VnY0hKbFkybHphVzl1SUdadmNpQnRiM0psSUhCbFlXdDVJR1JwYzNSeWFXSjFkR2x2Ymx4dUlDQWdJQ0FnSUNBZ0lDQWdZbVYwWVcxcGJpQTlJR0psZEdFN0lDOHZJRzF2ZG1VZ2RYQWdkR2hsSUdKdmRXNWtjMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR0psZEdGdFlYZ2dQVDA5SUVsdVptbHVhWFI1S1NCaVpYUmhJRDBnWW1WMFlTQXFJREk3SUdWc2MyVWdZbVYwWVNBOUlDaGlaWFJoSUNzZ1ltVjBZVzFoZUNrZ0x5QXlPMXh1SUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQXZMeUJqYjI1MlpYSnpaU0JqWVhObExpQnRZV3RsSUdScGMzUnlkV0owYVc5dUlHeGxjM01nY0dWaGEzbGNiaUFnSUNBZ0lDQWdJQ0FnSUdKbGRHRnRZWGdnUFNCaVpYUmhPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR0psZEdGdGFXNGdQVDA5SUMxSmJtWnBibWwwZVNrZ1ltVjBZU0E5SUdKbGRHRWdMeUF5T3lCbGJITmxJR0psZEdFZ1BTQW9ZbVYwWVNBcklHSmxkR0Z0YVc0cElDOGdNanRjYmlBZ0lDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdJQ0F2THlCemRHOXdjR2x1WnlCamIyNWthWFJwYjI1ek9pQjBiMjhnYldGdWVTQjBjbWxsY3lCdmNpQm5iM1FnWVNCbmIyOWtJSEJ5WldOcGMybHZibHh1SUNBZ0lDQWdJQ0FnSUc1MWJTc3JPMXh1SUNBZ0lDQWdJQ0FnSUdsbUlDaE5ZWFJvTG1GaWN5aHVTR1Z5WlNBdElHaFVZWEpuWlhRcElEd2dkRzlzS1NCa2IyNWxJRDBnZEhKMVpUdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2JuVnRJRDQ5SUcxaGVIUnlhV1Z6S1NCa2IyNWxJRDBnZEhKMVpUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUM4dklHTnZibk52YkdVdWJHOW5LQ2RrWVhSaElIQnZhVzUwSUNjZ0t5QnBJQ3NnSnlCblpYUnpJSEJ5WldOcGMybHZiaUFuSUNzZ1ltVjBZU0FySUNjZ1lXWjBaWElnSnlBcklHNTFiU0FySUNjZ1ltbHVZWEo1SUhObFlYSmphQ0J6ZEdWd2N5NG5LVHRjYmlBZ0lDQWdJQ0FnTHk4Z1kyOXdlU0J2ZG1WeUlIUm9aU0JtYVc1aGJDQndjbTkzSUhSdklGQWdZWFFnY205M0lHbGNiaUFnSUNBZ0lDQWdabTl5SUNoc1pYUWdhaUE5SURBN0lHb2dQQ0J1T3lCcUt5c3BJRkJiYVNBcUlHNGdLeUJxWFNBOUlIQnliM2RiYWwwN1hHNGdJQ0FnSUNCOUlDOHZJR1Z1WkNCc2IyOXdJRzkyWlhJZ1pYaGhiWEJzWlhNZ2FWeHVYRzRnSUNBZ0lDQXZMeUJ6ZVcxdFpYUnlhWHBsSUZBZ1lXNWtJRzV2Y20xaGJHbDZaU0JwZENCMGJ5QnpkVzBnZEc4Z01TQnZkbVZ5SUdGc2JDQnBhbHh1SUNBZ0lDQWdZMjl1YzNRZ2NFOTFkQ0E5SUhSb2FYTXVlbVZ5YjNNb2JpQXFJRzRwTzF4dUlDQWdJQ0FnWTI5dWMzUWdUaklnUFNCdUlDb2dNanRjYmlBZ0lDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnYmpzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0FnSUdadmNpQW9iR1YwSUdvZ1BTQXdPeUJxSUR3Z2Jqc2dhaXNyS1Z4dUlDQWdJQ0FnSUNBZ0lIQlBkWFJiYVNBcUlHNGdLeUJxWFNBOUlFMWhkR2d1YldGNEtDaFFXMmtnS2lCdUlDc2dhbDBnS3lCUVcyb2dLaUJ1SUNzZ2FWMHBJQzhnVGpJc0lERmxMVEV3TUNrN1hHNGdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lISmxkSFZ5YmlCd1QzVjBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJR2hsYkhCbGNpQm1kVzVqZEdsdmJseHVJQ0FnSUhCeWFYWmhkR1VnYzJsbmJpaDRPaUJ1ZFcxaVpYSXBJSHNnY21WMGRYSnVJSGdnUGlBd0lEOGdNU0E2SUhnZ1BDQXdJRDhnTFRFZ09pQXdPeUI5WEc1Y2JpQWdJQ0JqYjI1emRISjFZM1J2Y2lodmNIUTZJSHRiWHpvZ2MzUnlhVzVuWFRvZ1lXNTVmU2tnZTF4dUlDQWdJQ0FnYjNCMElEMGdiM0IwSUh4OElIdDlPMXh1SUNBZ0lDQWdkR2hwY3k1d1pYSndiR1Y0YVhSNUlEMGdkR2hwY3k1blpYUnZjSFFvYjNCMExDQW5jR1Z5Y0d4bGVHbDBlU2NzSURNd0tUc2dMeThnWldabVpXTjBhWFpsSUc1MWJXSmxjaUJ2WmlCdVpXRnlaWE4wSUc1bGFXZG9ZbTl5YzF4dUlDQWdJQ0FnZEdocGN5NWthVzBnUFNCMGFHbHpMbWRsZEc5d2RDaHZjSFFzSUNka2FXMG5MQ0F5S1RzZ0x5OGdZbmtnWkdWbVlYVnNkQ0F5TFVRZ2RGTk9SVnh1SUNBZ0lDQWdkR2hwY3k1bGNITnBiRzl1SUQwZ2RHaHBjeTVuWlhSdmNIUW9iM0IwTENBblpYQnphV3h2Ymljc0lERXdLVHNnTHk4Z2JHVmhjbTVwYm1jZ2NtRjBaVnh1SUNBZ0lDQWdkR2hwY3k1eVlXNWtiMjBnUFNCMGFHbHpMbWRsZEc5d2RDaHZjSFFzSUNkeVlXNWtiMjBuTENCTllYUm9MbkpoYm1SdmJTazdJQzh2SUhKaGJtUnZiU0J1ZFcxaVpYSWdaMlZ1WlhKaGRHOXlYRzRnSUNBZ2ZWeHVYRzRnSUNBZ0x5OGdkR2hwY3lCbWRXNWpkR2x2YmlCMFlXdGxjeUJoSUhObGRDQnZaaUJvYVdkb0xXUnBiV1Z1YzJsdmJtRnNJSEJ2YVc1MGMxeHVJQ0FnSUM4dklHRnVaQ0JqY21WaGRHVnpJRzFoZEhKcGVDQlFJR1p5YjIwZ2RHaGxiU0IxYzJsdVp5Qm5ZWFZ6YzJsaGJpQnJaWEp1Wld4Y2JpQWdJQ0J3ZFdKc2FXTWdhVzVwZEVSaGRHRlNZWGNvV0RvZ1FYSnlZWGs4UVhKeVlYazhZVzU1UGo0cElIdGNiaUFnSUNBZ0lHTnZibk4wSUU0Z1BTQllMbXhsYm1kMGFEdGNiaUFnSUNBZ0lHTnZibk4wSUVRZ1BTQllXekJkTG14bGJtZDBhRHRjYmlBZ0lDQWdJSFJvYVhNdVlYTnpaWEowS0U0Z1BpQXdMQ0FuSUZnZ2FYTWdaVzF3ZEhrL0lGbHZkU0J0ZFhOMElHaGhkbVVnYzI5dFpTQmtZWFJoSVNjcE8xeHVJQ0FnSUNBZ2RHaHBjeTVoYzNObGNuUW9SQ0ErSURBc0lDY2dXRnN3WFNCcGN5QmxiWEIwZVQ4Z1YyaGxjbVVnYVhNZ2RHaGxJR1JoZEdFL0p5azdYRzRnSUNBZ0lDQmpiMjV6ZENCa2FYTjBjeUE5SUhSb2FYTXVlSFJ2WkNoWUtUc2dMeThnWTI5dWRtVnlkQ0JZSUhSdklHUnBjM1JoYm1ObGN5QjFjMmx1WnlCbllYVnpjMmxoYmlCclpYSnVaV3hjYmlBZ0lDQWdJSFJvYVhNdVVDQTlJSFJvYVhNdVpESndLR1JwYzNSekxDQjBhR2x6TG5CbGNuQnNaWGhwZEhrc0lERmxMVFFzSUVRcE95QXZMeUJoZEhSaFkyZ2dkRzhnYjJKcVpXTjBYRzRnSUNBZ0lDQjBhR2x6TGs0Z1BTQk9PeUF2THlCaVlXTnJJSFZ3SUhSb1pTQnphWHBsSUc5bUlIUm9aU0JrWVhSaGMyVjBYRzRnSUNBZ0lDQjBhR2x6TG1sdWFYUlRiMngxZEdsdmJpZ3BPeUF2THlCeVpXWnlaWE5vSUhSb2FYTmNiaUFnSUNCOVhHNWNiaUFnSUNBdkx5QjBhR2x6SUdaMWJtTjBhVzl1SUhSaGEyVnpJR0VnWjJsMlpXNGdaR2x6ZEdGdVkyVWdiV0YwY21sNElHRnVaQ0JqY21WaGRHVnpYRzRnSUNBZ0x5OGdiV0YwY21sNElGQWdabkp2YlNCMGFHVnRMbHh1SUNBZ0lDOHZJRVFnYVhNZ1lYTnpkVzFsWkNCMGJ5QmlaU0J3Y205MmFXUmxaQ0JoY3lCaElHeHBjM1FnYjJZZ2JHbHpkSE1zSUdGdVpDQnphRzkxYkdRZ1ltVWdjM2x0YldWMGNtbGpYRzRnSUNBZ2NIVmliR2xqSUdsdWFYUkVZWFJoUkdsemRDaEVPaUJHYkc5aGRETXlRWEp5WVhrc0lISnZkMU5wZW1VNklHNTFiV0psY2lrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnVGlBOUlFUXViR1Z1WjNSb08xeHVJQ0FnSUNBZ2RHaHBjeTVoYzNObGNuUW9UaUErSURBc0lDY2dXQ0JwY3lCbGJYQjBlVDhnV1c5MUlHMTFjM1FnYUdGMlpTQnpiMjFsSUdSaGRHRWhKeWs3WEc0Z0lDQWdJQ0F2THlCamIyNTJaWEowSUVRZ2RHOGdZU0FvWm1GemRDa2dkSGx3WldRZ1lYSnlZWGtnZG1WeWMybHZibHh1SUNBZ0lDQWdMeThnWkdsemRITXVabTl5UldGamFDZ29aQ2tnUFQ0Z1kyOXVjMjlzWlM1c2IyY29aQ2twTzF4dUlDQWdJQ0FnWTI5dWMyOXNaUzUwYVcxbEtDZGthWE4wWVc1alpYTWdkRzhnYldGMGNtbDRKeWs3WEc0Z0lDQWdJQ0IwYUdsekxsQWdQU0IwYUdsekxtUXljQ2hFTENCMGFHbHpMbkJsY25Cc1pYaHBkSGtzSURGbExUUXNJSEp2ZDFOcGVtVXBPMXh1SUNBZ0lDQWdZMjl1YzI5c1pTNTBhVzFsUlc1a0tDZGthWE4wWVc1alpYTWdkRzhnYldGMGNtbDRKeWs3WEc0Z0lDQWdJQ0IwYUdsekxrNGdQU0J5YjNkVGFYcGxPMXh1SUNBZ0lDQWdkR2hwY3k1cGJtbDBVMjlzZFhScGIyNG9LVHNnTHk4Z2NtVm1jbVZ6YUNCMGFHbHpYRzRnSUNBZ2ZWeHVYRzRnSUNBZ0x5OGdLSEpsS1dsdWFYUnBZV3hwZW1WeklIUm9aU0J6YjJ4MWRHbHZiaUIwYnlCeVlXNWtiMjFjYmlBZ0lDQndkV0pzYVdNZ2FXNXBkRk52YkhWMGFXOXVLQ2tnZTF4dUlDQWdJQ0FnTHk4Z1oyVnVaWEpoZEdVZ2NtRnVaRzl0SUhOdmJIVjBhVzl1SUhSdklIUXRVMDVGWEc0Z0lDQWdJQ0IwYUdsekxsa2dQU0IwYUdsekxuSmhibVJ1TW1Rb2RHaHBjeTVPTENCMGFHbHpMbVJwYlNrN0lDOHZJSFJvWlNCemIyeDFkR2x2Ymx4dUlDQWdJQ0FnZEdocGN5NW5ZV2x1Y3lBOUlIUm9hWE11Y21GdVpHNHlaQ2gwYUdsekxrNHNJSFJvYVhNdVpHbHRMQ0F4TGpBcE95QXZMeUJ6ZEdWd0lHZGhhVzV6SUhSdklHRmpZMlZzWlhKaGRHVWdjSEp2WjNKbGMzTWdhVzRnZFc1amFHRnVaMmx1WnlCa2FYSmxZM1JwYjI1elhHNGdJQ0FnSUNCMGFHbHpMbmx6ZEdWd0lEMGdkR2hwY3k1eVlXNWtiakprS0hSb2FYTXVUaXdnZEdocGN5NWthVzBzSURBdU1DazdJQzh2SUcxdmJXVnVkSFZ0SUdGalkzVnRkV3hoZEc5eVhHNGdJQ0FnSUNCMGFHbHpMbWwwWlhJZ1BTQXdPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJSEpsZEhWeWJpQndiMmx1ZEdWeUlIUnZJR04xY25KbGJuUWdjMjlzZFhScGIyNWNiaUFnSUNCd2RXSnNhV01nWjJWMFUyOXNkWFJwYjI0b0tTQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RHaHBjeTVaTzF4dUlDQWdJSDFjYmx4dUlDQWdJQzh2SUhCbGNtWnZjbTBnWVNCemFXNW5iR1VnYzNSbGNDQnZaaUJ2Y0hScGJXbDZZWFJwYjI0Z2RHOGdhVzF3Y205MlpTQjBhR1VnWlcxaVpXUmthVzVuWEc0Z0lDQWdjSFZpYkdsaklITjBaWEFvS1NCN1hHNGdJQ0FnSUNCMGFHbHpMbWwwWlhJZ0t6MGdNVHRjYmlBZ0lDQWdJR052Ym5OMElFNGdQU0IwYUdsekxrNDdYRzRnSUNBZ0lDQmpiMjV6ZENCalp5QTlJSFJvYVhNdVkyOXpkRWR5WVdRb2RHaHBjeTVaS1RzZ0x5OGdaWFpoYkhWaGRHVWdaM0poWkdsbGJuUmNiaUFnSUNBZ0lHTnZibk4wSUdOdmMzUWdQU0JqWnk1amIzTjBPMXh1SUNBZ0lDQWdZMjl1YzNRZ1ozSmhaQ0E5SUdObkxtZHlZV1E3WEc1Y2JpQWdJQ0FnSUM4dklIQmxjbVp2Y20wZ1ozSmhaR2xsYm5RZ2MzUmxjRnh1SUNBZ0lDQWdZMjl1YzNRZ2VXMWxZVzRnUFNCMGFHbHpMbnBsY205ektIUm9hWE11WkdsdEtUdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dUanNnYVNzcktTQjdYRzRnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR1FnUFNBd095QmtJRHdnZEdocGN5NWthVzA3SUdRckt5a2dlMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR2RwWkNBOUlHZHlZV1JiYVYxYlpGMDdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdjMmxrSUQwZ2RHaHBjeTU1YzNSbGNGdHBYVnRrWFR0Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCbllXbHVhV1FnUFNCMGFHbHpMbWRoYVc1elcybGRXMlJkTzF4dVhHNGdJQ0FnSUNBZ0lDQWdMeThnWTI5dGNIVjBaU0JuWVdsdUlIVndaR0YwWlZ4dUlDQWdJQ0FnSUNBZ0lHeGxkQ0J1WlhkbllXbHVJRDBnZEdocGN5NXphV2R1S0dkcFpDa2dQVDA5SUhSb2FYTXVjMmxuYmloemFXUXBJRDhnWjJGcGJtbGtJQ29nTUM0NElEb2daMkZwYm1sa0lDc2dNQzR5TzF4dUlDQWdJQ0FnSUNBZ0lHbG1JQ2h1WlhkbllXbHVJRHdnTUM0d01Ta2dibVYzWjJGcGJpQTlJREF1TURFN0lDOHZJR05zWVcxd1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1bllXbHVjMXRwWFZ0a1hTQTlJRzVsZDJkaGFXNDdJQzh2SUhOMGIzSmxJR1p2Y2lCdVpYaDBJSFIxY201Y2JseHVJQ0FnSUNBZ0lDQWdJQzh2SUdOdmJYQjFkR1VnYlc5dFpXNTBkVzBnYzNSbGNDQmthWEpsWTNScGIyNWNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQnRiMjEyWVd3Z1BTQjBhR2x6TG1sMFpYSWdQQ0F5TlRBZ1B5QXdMalVnT2lBd0xqZzdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdibVYzYzJsa0lEMGdiVzl0ZG1Gc0lDb2djMmxrSUMwZ2RHaHBjeTVsY0hOcGJHOXVJQ29nYm1WM1oyRnBiaUFxSUdkeVlXUmJhVjFiWkYwN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1NWMzUmxjRnRwWFZ0a1hTQTlJRzVsZDNOcFpEc2dMeThnY21WdFpXMWlaWElnZEdobElITjBaWEFnZDJVZ2RHOXZhMXh1WEc0Z0lDQWdJQ0FnSUNBZ0x5OGdjM1JsY0NGY2JpQWdJQ0FnSUNBZ0lDQjBhR2x6TGxsYmFWMWJaRjBnS3owZ2JtVjNjMmxrTzF4dVhHNGdJQ0FnSUNBZ0lDQWdlVzFsWVc1YlpGMGdLejBnZEdocGN5NVpXMmxkVzJSZE95QXZMeUJoWTJOMWJYVnNZWFJsSUcxbFlXNGdjMjhnZEdoaGRDQjNaU0JqWVc0Z1kyVnVkR1Z5SUd4aGRHVnlYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnTHk4Z2NtVndjbTlxWldOMElGa2dkRzhnWW1VZ2VtVnlieUJ0WldGdVhHNGdJQ0FnSUNCbWIzSWdLR3hsZENCcElEMGdNRHNnYVNBOElFNDdJR2tyS3lrZ2UxeHVJQ0FnSUNBZ0lDQm1iM0lnS0d4bGRDQmtJRDBnTURzZ1pDQThJSFJvYVhNdVpHbHRPeUJrS3lzcFhHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1WlcybGRXMlJkSUMwOUlIbHRaV0Z1VzJSZElDOGdUanRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnTHk5cFppaDBhR2x6TG1sMFpYSWxNVEF3UFQwOU1Da2dZMjl1YzI5c1pTNXNiMmNvSjJsMFpYSWdKeUFySUhSb2FYTXVhWFJsY2lBcklDY3NJR052YzNRNklDY2dLeUJqYjNOMEtUdGNiaUFnSUNBZ0lISmxkSFZ5YmlCamIzTjBPeUF2THlCeVpYUjFjbTRnWTNWeWNtVnVkQ0JqYjNOMFhHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHk4Z1ptOXlJR1JsWW5WbloybHVaem9nWjNKaFpHbGxiblFnWTJobFkydGNiaUFnSUNCd2RXSnNhV01nWkdWaWRXZEhjbUZrS0NrZ2UxeHVJQ0FnSUNBZ1kyOXVjM1FnVGlBOUlIUm9hWE11VGp0Y2JseHVJQ0FnSUNBZ1kyOXVjM1FnWTJjZ1BTQjBhR2x6TG1OdmMzUkhjbUZrS0hSb2FYTXVXU2s3SUM4dklHVjJZV3gxWVhSbElHZHlZV1JwWlc1MFhHNGdJQ0FnSUNBdkwyTnZibk4wSUdOdmMzUWdQU0JqWnk1amIzTjBPMXh1SUNBZ0lDQWdZMjl1YzNRZ1ozSmhaQ0E5SUdObkxtZHlZV1E3WEc1Y2JpQWdJQ0FnSUdOdmJuTjBJR1VnUFNBeFpTMDFPMXh1SUNBZ0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JPT3lCcEt5c3BJSHRjYmlBZ0lDQWdJQ0FnWm05eUlDaHNaWFFnWkNBOUlEQTdJR1FnUENCMGFHbHpMbVJwYlRzZ1pDc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnZVc5c1pDQTlJSFJvYVhNdVdWdHBYVnRrWFR0Y2JseHVJQ0FnSUNBZ0lDQWdJSFJvYVhNdVdWdHBYVnRrWFNBOUlIbHZiR1FnS3lCbE8xeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElHTm5NQ0E5SUhSb2FYTXVZMjl6ZEVkeVlXUW9kR2hwY3k1WktUdGNibHh1SUNBZ0lDQWdJQ0FnSUhSb2FYTXVXVnRwWFZ0a1hTQTlJSGx2YkdRZ0xTQmxPMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR05uTVNBOUlIUm9hWE11WTI5emRFZHlZV1FvZEdocGN5NVpLVHRjYmx4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUdGdVlXeDVkR2xqSUQwZ1ozSmhaRnRwWFZ0a1hUdGNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQnVkVzFsY21sallXd2dQU0FvWTJjd0xtTnZjM1FnTFNCalp6RXVZMjl6ZENrZ0x5QW9NaUFxSUdVcE8xeHVJQ0FnSUNBZ0lDQWdJR052Ym5OdmJHVXViRzluS0drZ0t5QW5MQ2NnS3lCa0lDc2dKem9nWjNKaFpHTm9aV05ySUdGdVlXeDVkR2xqT2lBbklDc2dZVzVoYkhsMGFXTWdLeUFuSUhaekxpQnVkVzFsY21sallXdzZJQ2NnS3lCdWRXMWxjbWxqWVd3cE8xeHVYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NVpXMmxkVzJSZElEMGdlVzlzWkR0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUgxY2JseHVJQ0FnSUhCeWFYWmhkR1VnY1hWQmNuSS9PaUJHYkc5aGRETXlRWEp5WVhrN1hHNGdJQ0FnTHk4Z2NtVjBkWEp1SUdOdmMzUWdZVzVrSUdkeVlXUnBaVzUwTENCbmFYWmxiaUJoYmlCaGNuSmhibWRsYldWdWRGeHVJQ0FnSUhCMVlteHBZeUJqYjNOMFIzSmhaQ2haT2lCdWRXMWlaWEpiWFZ0ZEtTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCT0lEMGdkR2hwY3k1T08xeHVJQ0FnSUNBZ1kyOXVjM1FnWkdsdElEMGdkR2hwY3k1a2FXMDdJQzh2SUdScGJTQnZaaUJ2ZFhSd2RYUWdjM0JoWTJWY2JpQWdJQ0FnSUdOdmJuTjBJRkFnUFNCMGFHbHpMbEE3WEc1Y2JpQWdJQ0FnSUdOdmJuTjBJSEJ0ZFd3Z1BTQjBhR2x6TG1sMFpYSWdQQ0F4TURBZ1B5QTBJRG9nTVRzZ0x5OGdkSEpwWTJzZ2RHaGhkQ0JvWld4d2N5QjNhWFJvSUd4dlkyRnNJRzl3ZEdsdFlWeHVYRzRnSUNBZ0lDQXZMeUJqYjIxd2RYUmxJR04xY25KbGJuUWdVU0JrYVhOMGNtbGlkWFJwYjI0c0lIVnVibTl5YldGc2FYcGxaQ0JtYVhKemRGeHVJQ0FnSUNBZ2RHaHBjeTV4ZFVGeWNpQS9QejBnZEdocGN5NTZaWEp2Y3loT0lDb2dUaWs3WEc0Z0lDQWdJQ0JzWlhRZ2NYTjFiU0E5SURBdU1EdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dUanNnYVNzcktTQjdYRzRnSUNBZ0lDQWdJR1p2Y2lBb2JHVjBJR29nUFNCcElDc2dNVHNnYWlBOElFNDdJR29yS3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElHUnpkVzBnUFNCdVpYY2dRWEp5WVhrb1pHbHRLUzV5WldSMVkyVW9LSEJ5WlhZc0lGOHNJR1FwSUQwK0lIQnlaWFlnS3lCTllYUm9MbkJ2ZHloWlcybGRXMlJkSUMwZ1dWdHFYVnRrWFN3Z01pa3NJREFwTzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUhGMUlEMGdNUzR3SUM4Z0tERXVNQ0FySUdSemRXMHBPeUF2THlCVGRIVmtaVzUwSUhRdFpHbHpkSEpwWW5WMGFXOXVYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXhkVUZ5Y2x0cElDb2dUaUFySUdwZElEMGdjWFU3WEc0Z0lDQWdJQ0FnSUNBZ2RHaHBjeTV4ZFVGeWNsdHFJQ29nVGlBcklHbGRJRDBnY1hVN1hHNGdJQ0FnSUNBZ0lDQWdjWE4xYlNBclBTQXlJQ29nY1hVN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNiaUFnSUNBZ0lDOHZJRzV2Y20xaGJHbDZaU0JSSUdScGMzUnlhV0oxZEdsdmJpQjBieUJ6ZFcwZ2RHOGdNVnh1SUNBZ0lDQWdMeTlqYjI1emRDQk9UaUE5SUU0Z0tpQk9PMXh1SUNBZ0lDQWdMeTlqYjI1emRDQlJJRDBnZEdocGN5NTZaWEp2Y3loT1RpazdYRzRnSUNBZ0lDQnNaWFFnWTI5emRDQTlJREF1TUR0Y2JpQWdJQ0FnSUdOdmJuTjBJR2R5WVdRZ1BTQnVaWGNnUVhKeVlYa29UaWt1Wm1sc2JDaHVkV3hzS1M1dFlYQW9LQ2tnUFQ0Z0tHNWxkeUJHYkc5aGRETXlRWEp5WVhrb1pHbHRLU2t1Wm1sc2JDZ3dMakFwS1R0Y2JpQWdJQ0FnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z1Rqc2dhU3NyS1NCN1hHNGdJQ0FnSUNBZ0lDOHZJR052Ym5OMElHZHpkVzBnUFNCdVpYY2dSbXh2WVhRek1rRnljbUY1S0dScGJTa3VabWxzYkNnd0xqQXBPeUF2THlCcGJtbDBJR2R5WVdRZ1ptOXlJSEJ2YVc1MElHbGNiaUFnSUNBZ0lDQWdabTl5SUNoc1pYUWdhaUE5SUdrZ0t5QXhPeUJxSUR3Z1Rqc2dhaXNyS1NCN1hHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1VTQTlJRTFoZEdndWJXRjRLSFJvYVhNdWNYVkJjbkpiYVNBcUlFNGdLeUJxWFNBdklIRnpkVzBzSURGbExURXdNQ2s3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXpkQ0FyUFNBb0xTQlFXMmtnS2lCT0lDc2dhbDBnS2lCTllYUm9MbXh2WnloUktTa2dLaUF5T3lBdkx5QmhZMk4xYlhWc1lYUmxJR052YzNRZ0tIUm9aU0J1YjI0dFkyOXVjM1JoYm5RZ2NHOXlkR2x2YmlCaGRDQnNaV0Z6ZEM0dUxpbGNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQndjbVZ0ZFd4MElEMGdOQ0FxSUNod2JYVnNJQ29nVUZ0cElDb2dUaUFySUdwZElDMGdVU2tnS2lCMGFHbHpMbkYxUVhKeVcya2dLaUJPSUNzZ2FsMDdYRzRnSUNBZ0lDQWdJQ0FnTHk5amIyNXpiMnhsTG14dlp5aHdjbVZ0ZFd4MExDQlJMQ0JwTENCcUtUdGNiaUFnSUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0JrSUQwZ01Ec2daQ0E4SUdScGJUc2daQ3NyS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JuY21Ga1cybGRXMlJkSUNzOUlIQnlaVzExYkhRZ0tpQW9XVnRwWFZ0a1hTQXRJRmxiYWwxYlpGMHBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ1ozSmhaRnRxWFZ0a1hTQXJQU0J3Y21WdGRXeDBJQ29nS0ZsYmFsMWJaRjBnTFNCWlcybGRXMlJkS1R0Y2JpQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnTHk5bmNtRmtXMmxkSUQwZ1ozTjFiVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnY21WMGRYSnVJSHRqYjNOMExDQm5jbUZrZlR0Y2JpQWdJQ0I5WEc1OVhHNGlYWDA9IiwiLyoqIFByb3h5IGZvciBEaXN0YW5jZU1hdHJpeCBjbGFzcy4gQWxsb3dzIHRvIGluZGV4IG1hdHJpeCBhcyBtYXRyaXhbaV1bal1cbiAqIE5vdGU6IG11Y2ggc2xvd2VyIHRoYW4gZGlyZWN0IGluZGV4aW5nLCBidXQgc3RpbGwgbXVjaCBmYXN0ZXIgdGhhbiByZWNhbGN1bGF0aW5nIGRpc3RhbmNlcy5cbiAqIHdpbGwgYmUgdXNlZCBmb3IgVC1TTkUgbWFpbmx5LlxuICogQHBhcmFtIHtGbG9hdDMyQXJyYXl9Y29uZGVuc2VkQXJyYXkgLSBhcnJheSBvZiBkaXN0YW5jZXMgYmV0d2VlbiBhbGwgcGFpcnMgb2Ygb2JqZWN0c1xuICogQHBhcmFtIHtudW1iZXJ9c2l6ZSAtIG51bWJlciBvZiBjb21wYXJlYmxlcyBpbiBtYXRyaXhcbiAqIEByZXR1cm4ge0Zsb2F0MzJBcnJheX0gLSBwcm94eSBmb3IgY29uZGVuc2VkQXJyYXlcbiovXG5leHBvcnQgZnVuY3Rpb24gZGlzdGFuY2VNYXRyaXhQcm94eShjb25kZW5zZWRBcnJheSwgc2l6ZSkge1xuICAgIGNvbnN0IGxpbmVhckZ1bmMgPSBkbUxpbmVhckluZGV4KHNpemUpO1xuICAgIGZ1bmN0aW9uIGxpbmVhckluZGV4KGksIGopIHtcbiAgICAgICAgY29uc3QgaU51bSA9IE51bWJlcihpKTtcbiAgICAgICAgY29uc3Qgak51bSA9IE51bWJlcihqKTtcbiAgICAgICAgcmV0dXJuIGxpbmVhckZ1bmMoaU51bSwgak51bSk7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGlkeDJIYW5kbGVyKGlkeDEpIHtcbiAgICAgICAgcmV0dXJuICh7XG4gICAgICAgICAgICBnZXQodGFyZ2V0LCBpZHgyLCBfcmVjZWl2ZXIpIHtcbiAgICAgICAgICAgICAgICBpZiAoaWR4MSA9PT0gaWR4MilcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICAgICAgY29uc3QgbGluZWFySWR4ID0gTnVtYmVyKGlkeDEpID4gTnVtYmVyKGlkeDIpID8gbGluZWFySW5kZXgoaWR4MiwgaWR4MSkgOiBsaW5lYXJJbmRleChpZHgxLCBpZHgyKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFyZ2V0W2xpbmVhcklkeF07XG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgaWR4MUhhbmRsZXIgPSB7XG4gICAgICAgIGdldCh0YXJnZXQsIGlkeDEsIF9yZWNlaXZlcikge1xuICAgICAgICAgICAgaWYgKGlkeDEgPT09ICdsZW5ndGgnKVxuICAgICAgICAgICAgICAgIHJldHVybiBzaXplO1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBQcm94eSh0YXJnZXQsIGlkeDJIYW5kbGVyKGlkeDEpKTtcbiAgICAgICAgfSxcbiAgICB9O1xuICAgIHJldHVybiBuZXcgUHJveHkoY29uZGVuc2VkQXJyYXksIGlkeDFIYW5kbGVyKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBkbUxpbmVhckluZGV4KHNpemUpIHtcbiAgICByZXR1cm4gKGksIGopID0+IHNpemUgKiBpICsgaiAtIE1hdGguZmxvb3IoKChpICsgMikgKiAoaSArIDEpKSAvIDIpO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pY0hKdmVIa3Vhbk1pTENKemIzVnlZMlZTYjI5MElqb2lJaXdpYzI5MWNtTmxjeUk2V3lKd2NtOTRlUzUwY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGRlFUczdPenM3TzBWQlRVVTdRVUZEUml4TlFVRk5MRlZCUVZVc2JVSkJRVzFDTEVOQlFVTXNZMEZCTkVJc1JVRkJSU3hKUVVGWk8wbEJRelZGTEUxQlFVMHNWVUZCVlN4SFFVRkhMR0ZCUVdFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVU4yUXl4VFFVRlRMRmRCUVZjc1EwRkJReXhEUVVGclFpeEZRVUZGTEVOQlFXdENPMUZCUTNwRUxFMUJRVTBzU1VGQlNTeEhRVUZITEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOMlFpeE5RVUZOTEVsQlFVa3NSMEZCUnl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGRrSXNUMEZCVHl4VlFVRlZMRU5CUVVNc1NVRkJTU3hGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBsQlEyaERMRU5CUVVNN1NVRkZSQ3hUUVVGVExGZEJRVmNzUTBGQlF5eEpRVUZ4UWp0UlFVTjRReXhQUVVGUExFTkJRMHc3V1VGRFJTeEhRVUZITEVOQlFVTXNUVUZCVFN4RlFVRkZMRWxCUVVrc1JVRkJSU3hUUVVGVE8yZENRVU42UWl4SlFVRkpMRWxCUVVrc1MwRkJTeXhKUVVGSk8yOUNRVUZGTEU5QlFVOHNRMEZCUXl4RFFVRkRPMmRDUVVNMVFpeE5RVUZOTEZOQlFWTXNSMEZCUnl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhYUVVGWExFTkJRVU1zU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhYUVVGWExFTkJRVU1zU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMmRDUVVOc1J5eFBRVUZQTEUxQlFVMHNRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJRenRaUVVNelFpeERRVUZETzFOQlEwWXNRMEZEUml4RFFVRkRPMGxCUTBvc1EwRkJRenRKUVVORUxFMUJRVTBzVjBGQlZ5eEhRVUVyUWp0UlFVTTVReXhIUVVGSExFTkJRVU1zVFVGQlRTeEZRVUZGTEVsQlFVa3NSVUZCUlN4VFFVRlRPMWxCUTNwQ0xFbEJRVWtzU1VGQlNTeExRVUZMTEZGQlFWRTdaMEpCUVVVc1QwRkJUeXhKUVVGSkxFTkJRVU03V1VGRGJrTXNUMEZCVHl4SlFVRkpMRXRCUVVzc1EwRkJReXhOUVVGTkxFVkJRVVVzVjBGQlZ5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRPVU1zUTBGQlF6dExRVU5HTEVOQlFVTTdTVUZGUml4UFFVRlBMRWxCUVVrc1MwRkJTeXhEUVVGRExHTkJRV01zUlVGQlJTeFhRVUZYTEVOQlFVTXNRMEZCUXp0QlFVTm9SQ3hEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEdGQlFXRXNRMEZCUXl4SlFVRlpPMGxCUTNoRExFOUJRVThzUTBGQlF5eERRVUZUTEVWQlFVVXNRMEZCVXl4RlFVRkZMRVZCUVVVc1EwRkJReXhKUVVGSkxFZEJRVWNzUTBGQlF5eEhRVUZITEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOMFJpeERRVUZESWl3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaVhHNWNiaThxS2lCUWNtOTRlU0JtYjNJZ1JHbHpkR0Z1WTJWTllYUnlhWGdnWTJ4aGMzTXVJRUZzYkc5M2N5QjBieUJwYm1SbGVDQnRZWFJ5YVhnZ1lYTWdiV0YwY21sNFcybGRXMnBkWEc0Z0tpQk9iM1JsT2lCdGRXTm9JSE5zYjNkbGNpQjBhR0Z1SUdScGNtVmpkQ0JwYm1SbGVHbHVaeXdnWW5WMElITjBhV3hzSUcxMVkyZ2dabUZ6ZEdWeUlIUm9ZVzRnY21WallXeGpkV3hoZEdsdVp5QmthWE4wWVc1alpYTXVYRzRnS2lCM2FXeHNJR0psSUhWelpXUWdabTl5SUZRdFUwNUZJRzFoYVc1c2VTNWNiaUFxSUVCd1lYSmhiU0I3Um14dllYUXpNa0Z5Y21GNWZXTnZibVJsYm5ObFpFRnljbUY1SUMwZ1lYSnlZWGtnYjJZZ1pHbHpkR0Z1WTJWeklHSmxkSGRsWlc0Z1lXeHNJSEJoYVhKeklHOW1JRzlpYW1WamRITmNiaUFxSUVCd1lYSmhiU0I3Ym5WdFltVnlmWE5wZW1VZ0xTQnVkVzFpWlhJZ2IyWWdZMjl0Y0dGeVpXSnNaWE1nYVc0Z2JXRjBjbWw0WEc0Z0tpQkFjbVYwZFhKdUlIdEdiRzloZERNeVFYSnlZWGw5SUMwZ2NISnZlSGtnWm05eUlHTnZibVJsYm5ObFpFRnljbUY1WEc0cUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHUnBjM1JoYm1ObFRXRjBjbWw0VUhKdmVIa29ZMjl1WkdWdWMyVmtRWEp5WVhrNklFWnNiMkYwTXpKQmNuSmhlU3dnYzJsNlpUb2diblZ0WW1WeUtUb2dSbXh2WVhRek1rRnljbUY1SUh0Y2JpQWdZMjl1YzNRZ2JHbHVaV0Z5Um5WdVl5QTlJR1J0VEdsdVpXRnlTVzVrWlhnb2MybDZaU2s3WEc0Z0lHWjFibU4wYVc5dUlHeHBibVZoY2tsdVpHVjRLR2s2SUhONWJXSnZiQ0I4SUhOMGNtbHVaeXdnYWpvZ2MzbHRZbTlzSUh3Z2MzUnlhVzVuS1NCN1hHNGdJQ0FnWTI5dWMzUWdhVTUxYlNBOUlFNTFiV0psY2locEtUdGNiaUFnSUNCamIyNXpkQ0JxVG5WdElEMGdUblZ0WW1WeUtHb3BPMXh1SUNBZ0lISmxkSFZ5YmlCc2FXNWxZWEpHZFc1aktHbE9kVzBzSUdwT2RXMHBPMXh1SUNCOVhHNWNiaUFnWm5WdVkzUnBiMjRnYVdSNE1raGhibVJzWlhJb2FXUjRNVG9nYzNsdFltOXNJSHdnYzNSeWFXNW5LVHBRY205NGVVaGhibVJzWlhJOFJteHZZWFF6TWtGeWNtRjVQaUI3WEc0Z0lDQWdjbVYwZFhKdUlDaGNiaUFnSUNBZ0lIdGNiaUFnSUNBZ0lDQWdaMlYwS0hSaGNtZGxkQ3dnYVdSNE1pd2dYM0psWTJWcGRtVnlLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2FXWWdLR2xrZURFZ1BUMDlJR2xrZURJcElISmxkSFZ5YmlBd08xeHVJQ0FnSUNBZ0lDQWdJR052Ym5OMElHeHBibVZoY2tsa2VDQTlJRTUxYldKbGNpaHBaSGd4S1NBK0lFNTFiV0psY2locFpIZ3lLU0EvSUd4cGJtVmhja2x1WkdWNEtHbGtlRElzSUdsa2VERXBJRG9nYkdsdVpXRnlTVzVrWlhnb2FXUjRNU3dnYVdSNE1pazdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJSFJoY21kbGRGdHNhVzVsWVhKSlpIaGRPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnZlZ4dUlDQWdJQ2s3WEc0Z0lIMWNiaUFnWTI5dWMzUWdhV1I0TVVoaGJtUnNaWEk2SUZCeWIzaDVTR0Z1Wkd4bGNqeEdiRzloZERNeVFYSnlZWGsrSUQwZ2UxeHVJQ0FnSUdkbGRDaDBZWEpuWlhRc0lHbGtlREVzSUY5eVpXTmxhWFpsY2lrZ2UxeHVJQ0FnSUNBZ2FXWWdLR2xrZURFZ1BUMDlJQ2RzWlc1bmRHZ25LU0J5WlhSMWNtNGdjMmw2WlR0Y2JpQWdJQ0FnSUhKbGRIVnliaUJ1WlhjZ1VISnZlSGtvZEdGeVoyVjBMQ0JwWkhneVNHRnVaR3hsY2locFpIZ3hLU2s3WEc0Z0lDQWdmU3hjYmlBZ2ZUdGNibHh1SUNCeVpYUjFjbTRnYm1WM0lGQnliM2g1S0dOdmJtUmxibk5sWkVGeWNtRjVMQ0JwWkhneFNHRnVaR3hsY2lrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJrYlV4cGJtVmhja2x1WkdWNEtITnBlbVU2SUc1MWJXSmxjaWs2SUNocE9pQnVkVzFpWlhJc0lHbzZJRzUxYldKbGNpa2dQVDRnYm5WdFltVnlJSHRjYmlBZ2NtVjBkWEp1SUNocE9pQnVkVzFpWlhJc0lHbzZJRzUxYldKbGNpa2dQVDRnYzJsNlpTQXFJR2tnS3lCcUlDMGdUV0YwYUM1bWJHOXZjaWdvS0drZ0t5QXlLU0FxSUNocElDc2dNU2twSUM4Z01pazdYRzU5WEc0aVhYMD0iLCJpbXBvcnQgeyBWZWN0b3IgfSBmcm9tICdAZGF0YWdyb2stbGlicmFyaWVzL3V0aWxzL3NyYy90eXBlLWRlY2xhcmF0aW9ucyc7XG5pbXBvcnQgeyBBdmFpbGFibGVNZXRyaWNzLCBNZWFzdXJlLCBpc0JpdEFycmF5TWV0cmljIH0gZnJvbSAnLi4vdHlwZWQtbWV0cmljcyc7XG5pbXBvcnQgeyBEaXN0YW5jZU1hdHJpeFNlcnZpY2UgfSBmcm9tICcuLi9kaXN0YW5jZS1tYXRyaXgnO1xuaW1wb3J0IHsgVU1BUCB9IGZyb20gJy4uL3VtYXAnO1xuaW1wb3J0IHsgYXNzZXJ0LCB0cmFuc3Bvc2VNYXRyaXggfSBmcm9tICdAZGF0YWdyb2stbGlicmFyaWVzL3V0aWxzL3NyYy92ZWN0b3Itb3BlcmF0aW9ucyc7XG5pbXBvcnQgeyBTcGFyc2VNYXRyaXhTZXJ2aWNlIH0gZnJvbSAnLi4vZGlzdGFuY2UtbWF0cml4L3NwYXJzZS1tYXRyaXgtc2VydmljZSc7XG5pbXBvcnQgQml0QXJyYXkgZnJvbSAnQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvYml0LWFycmF5JztcbmltcG9ydCBzZWVkUmFuZG9tIGZyb20gJ3NlZWRyYW5kb20nO1xuLy9pbXBvcnQge1RTTkV9IGZyb20gJ0BrZWNrZWx0L3RzbmUnO1xuaW1wb3J0IHsgVFNORSB9IGZyb20gJy4uL3Qtc25lL3Qtc25lJztcbmNsYXNzIE11bHRpQ29sdW1uUmVkdWNlciB7XG4gICAgZGF0YTtcbiAgICB3ZWlnaHRzO1xuICAgIGFnZ3JlZ2F0aW9uTWV0aG9kO1xuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnMpIHtcbiAgICAgICAgdGhpcy5kYXRhID0gb3B0aW9ucy5kYXRhO1xuICAgICAgICB0aGlzLndlaWdodHMgPSBvcHRpb25zLndlaWdodHM7XG4gICAgICAgIHRoaXMuYWdncmVnYXRpb25NZXRob2QgPSBvcHRpb25zLmFnZ3JlZ2F0aW9uTWV0aG9kO1xuICAgIH1cbn1cbmNsYXNzIFRTTkVSZWR1Y2VyIGV4dGVuZHMgTXVsdGlDb2x1bW5SZWR1Y2VyIHtcbiAgICByZWR1Y2VyO1xuICAgIGl0ZXJhdGlvbnM7XG4gICAgZGlzdGFuY2VGbmFtZXM7XG4gICAgZGlzdGFuY2VGbnM7XG4gICAgZGlzdGFuY2VGbkFyZ3M7XG4gICAgcHJvZ3Jlc3NGdW5jO1xuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgVFNORVJlZHVjZXIuXG4gICAgICogQHBhcmFtIHtPcHRpb25zfSBvcHRpb25zIE9wdGlvbnMgdG8gcGFzcyB0byB0aGUgY29uc3RydWN0b3IuXG4gICAgICogQG1lbWJlcm9mIFRTTkVSZWR1Y2VyXG4gICAgICovXG4gICAgY29uc3RydWN0b3Iob3B0aW9ucykge1xuICAgICAgICBzdXBlcihvcHRpb25zKTtcbiAgICAgICAgY29uc3QgcmFuZG9tU2VlZCA9IG9wdGlvbnMucmFuZG9tU2VlZCA/PyBEYXRlKCk7XG4gICAgICAgIGNvbnN0IHJhbmRvbUZuID0gc2VlZFJhbmRvbShyYW5kb21TZWVkKTtcbiAgICAgICAgb3B0aW9ucy5yYW5kb20gPSByYW5kb21GbjtcbiAgICAgICAgdGhpcy5yZWR1Y2VyID0gbmV3IFRTTkUob3B0aW9ucyk7XG4gICAgICAgIHRoaXMuaXRlcmF0aW9ucyA9IG9wdGlvbnM/Lml0ZXJhdGlvbnMgPz8gdGhpcy5yZWR1Y2VyLmdldEl0ZXJTaXplKHRoaXMuZGF0YVswXS5sZW5ndGgpO1xuICAgICAgICB0aGlzLmRpc3RhbmNlRm5hbWVzID0gb3B0aW9ucy5kaXN0YW5jZUZuYW1lcztcbiAgICAgICAgdGhpcy5kaXN0YW5jZUZucyA9IG9wdGlvbnMuZGlzdGFuY2VGbnM7XG4gICAgICAgIHRoaXMuZGlzdGFuY2VGbkFyZ3MgPSBvcHRpb25zLmRpc3RhbmNlRm5BcmdzO1xuICAgICAgICB0aGlzLnByb2dyZXNzRnVuYyA9IG9wdGlvbnMucHJvZ3Jlc3NGdW5jO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBFbWJlZHMgdGhlIGRhdGEgZ2l2ZW4gaW50byB0aGUgdHdvLWRpbWVuc2lvbmFsIHNwYWNlIHVzaW5nIHQtU05FIG1ldGhvZC5cXFxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gW3BhcmFsbGVsRGlzdGFuY2VXb3JrZXJzXSBXaGV0aGVyIHRvIHVzZSBwYXJhbGxlbCBkaXN0YW5jZSB3b3JrZXJzLlxuICAgICAqIEByZXR1cm4ge2FueX0gQ2FydGVzaWFuIGNvb3JkaW5hdGUgb2YgdGhpcyBlbWJlZGRpbmcgYW5kIGRpc3RhbmNlIG1hdHJpeCB3aGVyZSBhcHBsaWNhYmxlLlxuICAgICAqL1xuICAgIGFzeW5jIHRyYW5zZm9ybSgpIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YVswXS5sZW5ndGggPiAxMDAwMClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTWF4aW11bSBudW1iZXIgb2Ygc2FtcGxlcyBmb3IgVC1TTkUgaXMgMTAwMDAnKTtcbiAgICAgICAgY29uc3QgbWF0cml4U2VydmljZSA9IG5ldyBEaXN0YW5jZU1hdHJpeFNlcnZpY2UodHJ1ZSwgZmFsc2UpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgLy8gY29uc3QgYWdncmVnYXRlID0gZ2V0QWdncmVnYXRpb25GdW5jdGlvbih0aGlzLmFnZ3JlZ2F0aW9uTWV0aG9kLCB0aGlzLndlaWdodHMpO1xuICAgICAgICAgICAgLy8gY29uc3QgZGlzdGFuY2VzOiBBcnJheTxGbG9hdDMyQXJyYXk+ID0gW107XG4gICAgICAgICAgICAvLyBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuZGF0YS5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgLy8gICBjb25zdCBkaXN0ID0gYXdhaXQgbWF0cml4U2VydmljZS5jYWxjKHRoaXMuZGF0YVtpXSwgdGhpcy5kaXN0YW5jZUZuYW1lc1tpXSwgZmFsc2UsIHRoaXMuZGlzdGFuY2VGbkFyZ3NbaV0pO1xuICAgICAgICAgICAgLy8gICBkaXN0YW5jZXMucHVzaChkaXN0KTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIC8vIGNvbnN0IGRpc3RhbmNlID0gbmV3IEZsb2F0MzJBcnJheShkaXN0YW5jZXNbMF0ubGVuZ3RoKS5maWxsKDApO1xuICAgICAgICAgICAgLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBkaXN0YW5jZXNbMF0ubGVuZ3RoOyArK2kpXG4gICAgICAgICAgICAvLyAgIGRpc3RhbmNlW2ldID0gYWdncmVnYXRlKGRpc3RhbmNlcy5tYXAoKGQpID0+IGRbaV0pKTtcbiAgICAgICAgICAgIGNvbnN0IGRpc3RhbmNlID0gYXdhaXQgbWF0cml4U2VydmljZS5jYWxjTXVsdGkodGhpcy5kYXRhLCB0aGlzLmRpc3RhbmNlRm5hbWVzLCBmYWxzZSwgdGhpcy5kaXN0YW5jZUZuQXJncywgdGhpcy53ZWlnaHRzLCB0aGlzLmFnZ3JlZ2F0aW9uTWV0aG9kKTtcbiAgICAgICAgICAgIG1hdHJpeFNlcnZpY2UudGVybWluYXRlKCk7XG4gICAgICAgICAgICAvLyBjb25zdCBtYXRyaXhQcm94eSA9IGRpc3RhbmNlTWF0cml4UHJveHkoZGlzdGFuY2UsIHRoaXMuZGF0YVswXS5sZW5ndGgpO1xuICAgICAgICAgICAgdGhpcy5yZWR1Y2VyLmluaXREYXRhRGlzdChkaXN0YW5jZSwgdGhpcy5kYXRhWzBdLmxlbmd0aCk7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaXRlcmF0aW9uczsgKytpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZWR1Y2VyLnN0ZXAoKTsgLy8gZXZlcnkgdGltZSB5b3UgY2FsbCB0aGlzLCBzb2x1dGlvbiBnZXRzIGJldHRlclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnByb2dyZXNzRnVuYylcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9ncmVzc0Z1bmMoaSwgdGhpcy5pdGVyYXRpb25zLCBbXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yZWR1Y2VyLmdldFNvbHV0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIG1hdHJpeFNlcnZpY2UudGVybWluYXRlKCk7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9XG4gICAgfVxufVxuY2xhc3MgVU1BUFJlZHVjZXIgZXh0ZW5kcyBNdWx0aUNvbHVtblJlZHVjZXIge1xuICAgIHJlZHVjZXI7XG4gICAgZGlzdGFuY2VGbmFtZXM7XG4gICAgZGlzdGFuY2VGbnM7XG4gICAgdmVjdG9ycztcbiAgICBwcm9ncmVzc0Z1bmM7XG4gICAgZGlzdGFuY2VGbkFyZ3M7XG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBVTUFQUmVkdWNlci5cbiAgICAgKiBAcGFyYW0ge09wdGlvbnN9IG9wdGlvbnMgT3B0aW9ucyB0byBwYXNzIHRvIHRoZSBjb25zdHJ1Y3Rvci5cbiAgICAgKiBAbWVtYmVyb2YgVU1BUFJlZHVjZXJcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IHJhbmRvbVNlZWQgPSBvcHRpb25zLnJhbmRvbVNlZWQgPz8gRGF0ZSgpO1xuICAgICAgICBjb25zdCByYW5kb21GbiA9IHNlZWRSYW5kb20ocmFuZG9tU2VlZCk7XG4gICAgICAgIHN1cGVyKG9wdGlvbnMpO1xuICAgICAgICBhc3NlcnQoJ2Rpc3RhbmNlRm5hbWVzJyBpbiBvcHRpb25zKTtcbiAgICAgICAgYXNzZXJ0KCdkaXN0YW5jZUZucycgaW4gb3B0aW9ucyk7XG4gICAgICAgIHRoaXMuZGlzdGFuY2VGbkFyZ3MgPSBvcHRpb25zLmRpc3RhbmNlRm5BcmdzO1xuICAgICAgICB0aGlzLmRpc3RhbmNlRm5zID0gb3B0aW9ucy5kaXN0YW5jZUZucztcbiAgICAgICAgdGhpcy5wcm9ncmVzc0Z1bmMgPSBvcHRpb25zLnByb2dyZXNzRnVuYztcbiAgICAgICAgdGhpcy5kaXN0YW5jZUZuYW1lcyA9IG9wdGlvbnMuZGlzdGFuY2VGbmFtZXM7XG4gICAgICAgIC8vVW1hcCB1c2VzIHZlY3RvciBpbmRleGluZywgc28gd2UgbmVlZCB0byBjcmVhdGUgYW4gYXJyYXkgb2YgdmVjdG9ycyBhcyBpbmRlY2VzLlxuICAgICAgICB0aGlzLnZlY3RvcnMgPSBuZXcgQXJyYXkodGhpcy5kYXRhWzBdLmxlbmd0aCkuZmlsbCgwKS5tYXAoKF8sIGkpID0+IGkpO1xuICAgICAgICBpZiAodGhpcy5kYXRhWzBdLmxlbmd0aCA8PSAob3B0aW9ucy5uTmVpZ2hib3JzID8/IDE1KSlcbiAgICAgICAgICAgIG9wdGlvbnMubk5laWdoYm9ycyA9IHRoaXMuZGF0YVswXS5sZW5ndGggLSAxO1xuICAgICAgICBvcHRpb25zLnJhbmRvbSA9IHJhbmRvbUZuO1xuICAgICAgICB0aGlzLnJlZHVjZXIgPSBuZXcgVU1BUChvcHRpb25zKTtcbiAgICAgICAgLy8gdGhpcy5yZWR1Y2VyLmRpc3RhbmNlRm4gPSB0aGlzLl9lbmNvZGVkRGlzdGFuY2UuYmluZCh0aGlzKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogRW1iZWRzIHRoZSBkYXRhIGdpdmVuIGludG8gdGhlIHR3by1kaW1lbnNpb25hbCBzcGFjZSB1c2luZyBVTUFQIG1ldGhvZC5cbiAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IFtfcGFyYWxsZWxEaXN0YW5jZVdvcmtlcnNdIFdoZXRoZXIgdG8gdXNlIHBhcmFsbGVsIGRpc3RhbmNlIG1hdHJpeCB3b3JrZXJzLlxuICAgICAqIEByZXR1cm4ge2FueX0gQ2FydGVzaWFuIGNvb3JkaW5hdGUgb2YgdGhpcyBlbWJlZGRpbmcuXG4gICAgICovXG4gICAgYXN5bmMgdHJhbnNmb3JtKF9wYXJhbGxlbERpc3RhbmNlV29ya2Vycykge1xuICAgICAgICBjb25zb2xlLnRpbWUoJ2tubiBncmFwaCcpO1xuICAgICAgICBjb25zdCBrbm5SZXMgPSBhd2FpdCBuZXcgU3BhcnNlTWF0cml4U2VydmljZSgpXG4gICAgICAgICAgICAubXVsdGlDb2x1bW5LTk4odGhpcy5kYXRhLCB0aGlzLmRpc3RhbmNlRm5hbWVzLCB0aGlzLnJlZHVjZXIubmVpZ2hib3JzLCB0aGlzLmRpc3RhbmNlRm5BcmdzLCB0aGlzLndlaWdodHMsIHRoaXMuYWdncmVnYXRpb25NZXRob2QpO1xuICAgICAgICBjb25zb2xlLnRpbWVFbmQoJ2tubiBncmFwaCcpO1xuICAgICAgICB0aGlzLnJlZHVjZXIuc2V0UHJlY29tcHV0ZWRLTk4oa25uUmVzLmtubkluZGV4ZXMsIGtublJlcy5rbm5EaXN0YW5jZXMpO1xuICAgICAgICAvLyBuZWVkZWQgc28gdGhhdCBnYXJiYWdlIGNvbGxlY3RvciBjYW4gZnJlZSBtZW1vcnkgZnJvbSBkaXN0YW5jZSBtYXRyaXhcbiAgICAgICAgYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgIH0sIDMwMCk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBlbWJlZGRpbmcgPSBhd2FpdCB0aGlzLnJlZHVjZXIuZml0QXN5bmModGhpcy52ZWN0b3JzLCAoZXBvYykgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJvZ3Jlc3NGdW5jKVxuICAgICAgICAgICAgICAgIHRoaXMucHJvZ3Jlc3NGdW5jKGVwb2MsIHRoaXMucmVkdWNlci5nZXRORXBvY2hzKCksIHRoaXMucmVkdWNlci5nZXRFbWJlZGRpbmcoKSk7XG4gICAgICAgIH0pO1xuICAgICAgICBmdW5jdGlvbiBhcnJheUNhc3QyQ29vcmRpbmF0ZXMoZGF0YSkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBBcnJheShkYXRhLmxlbmd0aCkuZmlsbCgwKS5tYXAoKF8sIGkpID0+IChWZWN0b3IuZnJvbShkYXRhW2ldKSkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhcnJheUNhc3QyQ29vcmRpbmF0ZXMoZW1iZWRkaW5nKTtcbiAgICB9XG59XG5jb25zdCBBdmFpbGFibGVSZWR1Y2VycyA9IHtcbiAgICAnVU1BUCc6IFVNQVBSZWR1Y2VyLFxuICAgICd0LVNORSc6IFRTTkVSZWR1Y2VyLFxufTtcbmV4cG9ydCBjbGFzcyBNdWx0aUNvbERpbVJlZHVjZXIge1xuICAgIHJlZHVjZXI7XG4gICAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRGltZW5zaW9uYWxpdHlSZWR1Y2VyLlxuICAgKiBAcGFyYW0ge2FueVtdfSBkYXRhIFZlY3RvcnMgdG8gZW1iZWQuXG4gICAqIEBwYXJhbSB7S25vd25NZXRob2RzfSBtZXRob2QgRW1iZWRkaW5nIG1ldGhvZCB0byBiZSBhcHBsaWVkXG4gICAqIEBwYXJhbSB7S25vd25NZXRyaWNzfSBtZXRyaWMgRGlzdGFuY2UgbWV0cmljIHRvIGJlIGNvbXB1dGVkIGJldHdlZW4gZWFjaCBvZiB0aGUgdmVjdG9ycy5cbiAgICogQHBhcmFtIHtPcHRpb25zfSBbb3B0aW9uc10gT3B0aW9ucyB0byBwYXNzIHRvIHRoZSBpbXBsZW1lbnRpbmcgZW1iZWRkZXJzLlxuICAgKiBAbWVtYmVyb2YgRGltZW5zaW9uYWxpdHlSZWR1Y2VyXG4gICAqL1xuICAgIGNvbnN0cnVjdG9yKGRhdGEsIG1ldGhvZCwgbWV0cmljcywgd2VpZ2h0cywgZGlzdGFuY2VBZ2dyZWdhdGlvbiwgb3B0aW9ucykge1xuICAgICAgICBjb25zdCBtZWFzdXJlcyA9IFtdO1xuICAgICAgICBmb3IgKGxldCBpZHggPSAwOyBpZHggPCBtZXRyaWNzLmxlbmd0aDsgKytpZHgpIHtcbiAgICAgICAgICAgIGNvbnN0IG1lYXN1cmUgPSBuZXcgTWVhc3VyZShtZXRyaWNzW2lkeF0pLmdldE1lYXN1cmUob3B0aW9ucy5kaXN0YW5jZUZuQXJnc1tpZHhdKTtcbiAgICAgICAgICAgIG1lYXN1cmVzLnB1c2gobWVhc3VyZSk7XG4gICAgICAgICAgICBsZXQgYml0QXJyYXlMZW5ndGggPSAyMDQ4O1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhW2lkeF0ubGVuZ3RoOyArK2kpIHtcbiAgICAgICAgICAgICAgICBpZiAoZGF0YVtpZHhdW2ldICYmIGRhdGFbaWR4XVtpXS5fbGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIGJpdEFycmF5TGVuZ3RoID0gZGF0YVtpZHhdW2ldLl9sZW5ndGg7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpc0JpdEFycmF5TWV0cmljKG1ldHJpY3NbaWR4XSkpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGFbaWR4XS5sZW5ndGg7ICsraSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YVtpZHhdW2ldICYmIGRhdGFbaWR4XVtpXS5fZGF0YSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFbaWR4XVtpXSA9IG5ldyBCaXRBcnJheShkYXRhW2lkeF1baV0uX2RhdGEsIGRhdGFbaWR4XVtpXS5fbGVuZ3RoKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVtpZHhdW2ldID0gbmV3IEJpdEFycmF5KGJpdEFycmF5TGVuZ3RoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1ldGhvZCA9PSAnVU1BUCcpIHtcbiAgICAgICAgICAgIHRoaXMucmVkdWNlciA9IG5ldyBVTUFQUmVkdWNlcih7XG4gICAgICAgICAgICAgICAgZGF0YTogZGF0YSxcbiAgICAgICAgICAgICAgICBkaXN0YW5jZUZuYW1lczogbWV0cmljcyxcbiAgICAgICAgICAgICAgICBkaXN0YW5jZUZuczogbWVhc3VyZXMsXG4gICAgICAgICAgICAgICAgZGlzdGFuY2VGbkFyZ3M6IG9wdGlvbnMuZGlzdGFuY2VGbkFyZ3MsXG4gICAgICAgICAgICAgICAgd2VpZ2h0czogd2VpZ2h0cyxcbiAgICAgICAgICAgICAgICBhZ2dyZWdhdGlvbk1ldGhvZDogZGlzdGFuY2VBZ2dyZWdhdGlvbixcbiAgICAgICAgICAgICAgICAuLi5vcHRpb25zXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChtZXRob2QgPT0gJ3QtU05FJykge1xuICAgICAgICAgICAgdGhpcy5yZWR1Y2VyID0gbmV3IFRTTkVSZWR1Y2VyKHtcbiAgICAgICAgICAgICAgICBkYXRhOiBkYXRhLFxuICAgICAgICAgICAgICAgIGRpc3RhbmNlRm5hbWVzOiBtZXRyaWNzLFxuICAgICAgICAgICAgICAgIGRpc3RhbmNlRm5zOiBtZWFzdXJlcyxcbiAgICAgICAgICAgICAgICBkaXN0YW5jZUZuQXJnczogb3B0aW9ucy5kaXN0YW5jZUZuQXJncyxcbiAgICAgICAgICAgICAgICB3ZWlnaHRzOiB3ZWlnaHRzLFxuICAgICAgICAgICAgICAgIGFnZ3JlZ2F0aW9uTWV0aG9kOiBkaXN0YW5jZUFnZ3JlZ2F0aW9uLFxuICAgICAgICAgICAgICAgIC4uLm9wdGlvbnNcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKlxuICAgKiBFbWJlZHMgdGhlIGRhdGEgZ2l2ZW4gaW50byB0aGUgdHdvLWRpbWVuc2lvbmFsIHNwYWNlIHVzaW5nIHRoZSBjaG9zZW4gbWV0aG9kLlxuICAgKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IHRyYW5zcG9zZSBXaGV0aGVyIHRvIHRyYW5zZm9ybSBjb29yZGluYXRlcyB0byBoYXZlIGNvbHVtbnMtZmlyc3Qgb3JpZW50YXRpb24uXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gcGFyYWxsZWxEaXN0YW5jZVdvcmtlcnMgV2hldGhlciB0byB1c2UgcGFyYWxsZWwgZGlzdGFuY2UgY29tcHV0YXRpb24uXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBJZiB0aGUgZW1iZWRkaW5nIG1ldGhvZCB3YXMgbm90IGZvdW5kLlxuICAgKiBAcmV0dXJuIHthbnl9IENhcnRlc2lhbiBjb29yZGluYXRlIG9mIHRoaXMgZW1iZWRkaW5nIGFuZCBkaXN0YW5jZSBtYXRyaXggd2hlcmUgYXBwbGljYWJsZS5cbiAgICogQG1lbWJlcm9mIERpbWVuc2lvbmFsaXR5UmVkdWNlclxuICAgKi9cbiAgICBhc3luYyB0cmFuc2Zvcm0odHJhbnNwb3NlID0gZmFsc2UpIHtcbiAgICAgICAgaWYgKHRoaXMucmVkdWNlciA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdSZWR1Y2VyIHdhcyBub3QgZGVmaW5lZC4nKTtcbiAgICAgICAgbGV0IGVtYmVkZGluZyA9IGF3YWl0IHRoaXMucmVkdWNlci50cmFuc2Zvcm0oKTtcbiAgICAgICAgaWYgKHRyYW5zcG9zZSlcbiAgICAgICAgICAgIGVtYmVkZGluZyA9IHRyYW5zcG9zZU1hdHJpeChlbWJlZGRpbmcpO1xuICAgICAgICByZXR1cm4gZW1iZWRkaW5nO1xuICAgIH1cbiAgICAvKipcbiAgICogUmV0dXJucyBtZXRyaWNzIGF2YWlsYWJsZSBieSB0eXBlLlxuICAgKlxuICAgKiBAcGFyYW0ge0F2YWlsYWJsZURhdGFUeXBlc30gdHlwZU5hbWUgdHlwZSBuYW1lXG4gICAqIEByZXR1cm4ge3N0cmluZ1tdfSBNZXRyaWMgbmFtZXMgd2hpY2ggZXhwZWN0cyB0aGUgZ2l2ZW4gZGF0YSB0eXBlXG4gICAqIEBtZW1iZXJvZiBEaW1lbnNpb25hbGl0eVJlZHVjZXJcbiAgICovXG4gICAgc3RhdGljIGF2YWlsYWJsZU1ldHJpY3NCeVR5cGUodHlwZU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKEF2YWlsYWJsZU1ldHJpY3NbdHlwZU5hbWVdKTtcbiAgICB9XG4gICAgLyoqXG4gICAqIFJldHVybnMgZGltZW5zaW9uYWxpdHkgcmVkdWN0aW9uIG1ldGhvZHMgYXZhaWxhYmxlLlxuICAgKlxuICAgKiBAcmVhZG9ubHlcbiAgICogQG1lbWJlcm9mIERpbWVuc2lvbmFsaXR5UmVkdWNlclxuICAgKi9cbiAgICBzdGF0aWMgZ2V0IGF2YWlsYWJsZU1ldGhvZHMoKSB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhBdmFpbGFibGVSZWR1Y2Vycyk7XG4gICAgfVxuICAgIC8qKlxuICAgKiBSZXR1cm5zIG1ldHJpY3MgYXZhaWxhYmxlLlxuICAgKlxuICAgKiBAcmVhZG9ubHlcbiAgICogQG1lbWJlcm9mIERpbWVuc2lvbmFsaXR5UmVkdWNlclxuICAgKi9cbiAgICBzdGF0aWMgZ2V0IGF2YWlsYWJsZU1ldHJpY3MoKSB7XG4gICAgICAgIGxldCBhbnMgPSBbXTtcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhBdmFpbGFibGVNZXRyaWNzKS5mb3JFYWNoKChvYmopID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFycmF5ID0gT2JqZWN0LnZhbHVlcyhvYmopO1xuICAgICAgICAgICAgYW5zID0gWy4uLmFucywgLi4uYXJyYXldO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGFucztcbiAgICB9XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2liWFZzZEdrdFkyOXNkVzF1TFdScGJTMXlaV1IxWTJWeUxtcHpJaXdpYzI5MWNtTmxVbTl2ZENJNklpSXNJbk52ZFhKalpYTWlPbHNpYlhWc2RHa3RZMjlzZFcxdUxXUnBiUzF5WldSMVkyVnlMblJ6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFOUJRVThzUlVGQkswTXNUVUZCVFN4RlFVRlZMRTFCUXk5RUxHbEVRVUZwUkN4RFFVRkRPMEZCUTNwRUxFOUJRVThzUlVGQmNVSXNaMEpCUVdkQ0xFVkJRV2RDTEU5QlFVOHNSVUZCUlN4blFrRkJaMElzUlVGQlF5eE5RVUZOTEd0Q1FVRnJRaXhEUVVGRE8wRkJReTlITEU5QlFVOHNSVUZCUXl4eFFrRkJjVUlzUlVGQlF5eE5RVUZOTEc5Q1FVRnZRaXhEUVVGRE8wRkJSWHBFTEU5QlFVOHNSVUZCUXl4SlFVRkpMRVZCUVVNc1RVRkJUU3hUUVVGVExFTkJRVU03UVVGRE4wSXNUMEZCVHl4RlFVRkRMRTFCUVUwc1JVRkJSU3hsUVVGbExFVkJRVU1zVFVGQlRTeHBSRUZCYVVRc1EwRkJRenRCUVVONFJpeFBRVUZQTEVWQlFVTXNiVUpCUVcxQ0xFVkJRVU1zVFVGQlRTd3dRMEZCTUVNc1EwRkJRenRCUVVVM1JTeFBRVUZQTEZGQlFWRXNUVUZCVFN4NVEwRkJlVU1zUTBGQlF6dEJRVU12UkN4UFFVRlBMRlZCUVZVc1RVRkJUU3haUVVGWkxFTkJRVU03UVVGRGNFTXNjVU5CUVhGRE8wRkJRM0pETEU5QlFVOHNSVUZCUXl4SlFVRkpMRVZCUVVNc1RVRkJUU3huUWtGQlowSXNRMEZCUXp0QlFUaENjRU1zVFVGQlpTeHJRa0ZCYTBJN1NVRkRia0lzU1VGQlNTeERRVUZaTzBsQlEyaENMRTlCUVU4c1EwRkJWenRKUVVOc1FpeHBRa0ZCYVVJc1EwRkJORUk3U1VGRGRrUXNXVUZCV1N4UFFVRm5RanRSUVVNeFFpeEpRVUZKTEVOQlFVTXNTVUZCU1N4SFFVRkhMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRGVrSXNTVUZCU1N4RFFVRkRMRTlCUVU4c1IwRkJSeXhQUVVGUExFTkJRVU1zVDBGQlR5eERRVUZETzFGQlF5OUNMRWxCUVVrc1EwRkJReXhwUWtGQmFVSXNSMEZCUnl4UFFVRlBMRU5CUVVNc2FVSkJRV2xDTEVOQlFVTTdTVUZEY2tRc1EwRkJRenREUVV0S08wRkJSVVFzVFVGQlRTeFhRVUZaTEZOQlFWRXNhMEpCUVd0Q08wbEJRemxDTEU5QlFVOHNRMEZCVHp0SlFVTmtMRlZCUVZVc1EwRkJVenRKUVVOdVFpeGpRVUZqTEVOQlFXbENPMGxCUXk5Q0xGZEJRVmNzUTBGQmFVTTdTVUZETlVNc1kwRkJZeXhEUVVGMVFqdEpRVU55UXl4WlFVRlpMRU5CUVhsRk8wbEJReTlHT3pzN08wOUJTVWM3U1VGRFNDeFpRVUZaTEU5QlFXZENPMUZCUXpGQ0xFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVTm1MRTFCUVUwc1ZVRkJWU3hIUVVGWExFOUJRVThzUTBGQlF5eFZRVUZWTEVsQlFVa3NTVUZCU1N4RlFVRkZMRU5CUVVNN1VVRkRlRVFzVFVGQlRTeFJRVUZSTEVkQlFVY3NWVUZCVlN4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRE8xRkJRM2hETEU5QlFVOHNRMEZCUXl4TlFVRk5MRWRCUVVjc1VVRkJVU3hEUVVGRE8xRkJRekZDTEVsQlFVa3NRMEZCUXl4UFFVRlBMRWRCUVVjc1NVRkJTU3hKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdVVUZEYWtNc1NVRkJTU3hEUVVGRExGVkJRVlVzUjBGQlJ5eFBRVUZQTEVWQlFVVXNWVUZCVlN4SlFVRkpMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zVjBGQlZ5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdVVUZEZGtZc1NVRkJTU3hEUVVGRExHTkJRV01zUjBGQlJ5eFBRVUZQTEVOQlFVTXNZMEZCWXl4RFFVRkRPMUZCUXpkRExFbEJRVWtzUTBGQlF5eFhRVUZYTEVkQlFVY3NUMEZCVHl4RFFVRkRMRmRCUVZjc1EwRkJRenRSUVVOMlF5eEpRVUZKTEVOQlFVTXNZMEZCWXl4SFFVRkhMRTlCUVU4c1EwRkJReXhqUVVGakxFTkJRVU03VVVGRE4wTXNTVUZCU1N4RFFVRkRMRmxCUVZrc1IwRkJSeXhQUVVGUExFTkJRVU1zV1VGQldTeERRVUZETzBsQlF6TkRMRU5CUVVNN1NVRkZSRHM3T3p0UFFVbEhPMGxCUTBrc1MwRkJTeXhEUVVGRExGTkJRVk03VVVGRGNFSXNTVUZCU1N4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNSMEZCUnl4TFFVRkxPMWxCUXpkQ0xFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNPRU5CUVRoRExFTkJRVU1zUTBGQlF6dFJRVU5zUlN4TlFVRk5MR0ZCUVdFc1IwRkJSeXhKUVVGSkxIRkNRVUZ4UWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU0zUkN4SlFVRkpPMWxCUTBZc2EwWkJRV3RHTzFsQlEyeEdMRFpEUVVFMlF6dFpRVU0zUXl3clEwRkJLME03V1VGREwwTXNaMGhCUVdkSU8xbEJRMmhJTERCQ1FVRXdRanRaUVVNeFFpeEpRVUZKTzFsQlEwb3NhMFZCUVd0Rk8xbEJRMnhGTEdkRVFVRm5SRHRaUVVOb1JDeDVSRUZCZVVRN1dVRkRla1FzVFVGQlRTeFJRVUZSTEVkQlFVY3NUVUZCVFN4aFFVRmhMRU5CUVVNc1UwRkJVeXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVWQlFVVXNTVUZCU1N4RFFVRkRMR05CUVdNc1JVRkJSU3hMUVVGTExFVkJRVVVzU1VGQlNTeERRVUZETEdOQlFXTXNSVUZEZGtjc1NVRkJTU3hEUVVGRExFOUJRVThzUlVGQlJTeEpRVUZKTEVOQlFVTXNhVUpCUVdsQ0xFTkJRVU1zUTBGQlF6dFpRVU40UXl4aFFVRmhMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03V1VGRE1VSXNNRVZCUVRCRk8xbEJRekZGTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1dVRkJXU3hEUVVGRExGRkJRVkVzUlVGQlJTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzFsQlJYcEVMRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFVkJRVVVzUTBGQlF5eEZRVUZGTzJkQ1FVTjRReXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NSVUZCUlN4RFFVRkRMRU5CUVVNc2FVUkJRV2xFTzJkQ1FVTjBSU3hKUVVGSkxFbEJRVWtzUTBGQlF5eFpRVUZaTzI5Q1FVTnVRaXhKUVVGSkxFTkJRVU1zV1VGQldTeERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETzJGQlF6ZERPMWxCUTBRc1QwRkJUeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEZkQlFWY3NSVUZCUlN4RFFVRkRPMU5CUTI1RE8xRkJRVU1zVDBGQlR5eERRVUZETEVWQlFVVTdXVUZEVml4aFFVRmhMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03V1VGRE1VSXNUVUZCVFN4RFFVRkRMRU5CUVVNN1UwRkRWRHRKUVVOSUxFTkJRVU03UTBGRFNqdEJRVVZFTEUxQlFVMHNWMEZCV1N4VFFVRlJMR3RDUVVGclFqdEpRVU01UWl4UFFVRlBMRU5CUVU4N1NVRkRaQ3hqUVVGakxFTkJRV2xDTzBsQlF5OUNMRmRCUVZjc1EwRkJZVHRKUVVONFFpeFBRVUZQTEVOQlFWYzdTVUZEYkVJc1dVRkJXU3hEUVVGMVJUdEpRVU51Uml4alFVRmpMRU5CUVhWQ08wbEJReTlET3pzN08wOUJTVWM3U1VGRFNDeFpRVUZaTEU5QlFXZENPMUZCUXpGQ0xFMUJRVTBzVlVGQlZTeEhRVUZYTEU5QlFVOHNRMEZCUXl4VlFVRlZMRWxCUVVrc1NVRkJTU3hGUVVGRkxFTkJRVU03VVVGRGVFUXNUVUZCVFN4UlFVRlJMRWRCUVVjc1ZVRkJWU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETzFGQlEzaERMRXRCUVVzc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dFJRVU5tTEUxQlFVMHNRMEZCUXl4blFrRkJaMElzU1VGQlNTeFBRVUZQTEVOQlFVTXNRMEZCUXp0UlFVTndReXhOUVVGTkxFTkJRVU1zWVVGQllTeEpRVUZKTEU5QlFVOHNRMEZCUXl4RFFVRkRPMUZCUTJwRExFbEJRVWtzUTBGQlF5eGpRVUZqTEVkQlFVY3NUMEZCVHl4RFFVRkRMR05CUVdNc1EwRkJRenRSUVVNM1F5eEpRVUZKTEVOQlFVTXNWMEZCVnl4SFFVRkhMRTlCUVU4c1EwRkJReXhYUVVGWkxFTkJRVU03VVVGRGVFTXNTVUZCU1N4RFFVRkRMRmxCUVZrc1IwRkJSeXhQUVVGUExFTkJRVU1zV1VGQldTeERRVUZETzFGQlJYcERMRWxCUVVrc1EwRkJReXhqUVVGakxFZEJRVWNzVDBGQlR5eERRVUZETEdOQlFXVXNRMEZCUXp0UlFVTTVReXhwUmtGQmFVWTdVVUZEYWtZc1NVRkJTU3hEUVVGRExFOUJRVThzUjBGQlJ5eEpRVUZKTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVVjJSU3hKUVVGSkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1RVRkJUU3hKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZMRU5CUVVNN1dVRkRia1FzVDBGQlR5eERRVUZETEZWQlFWVXNSMEZCUnl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRMME1zVDBGQlR5eERRVUZETEUxQlFVMHNSMEZCUnl4UlFVRlJMRU5CUVVNN1VVRkRNVUlzU1VGQlNTeERRVUZETEU5QlFVOHNSMEZCUnl4SlFVRkpMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dFJRVU5xUXl3NFJFRkJPRVE3U1VGRGFFVXNRMEZCUXp0SlFVVkVPenM3TzA5QlNVYzdTVUZEU1N4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVGRExIZENRVUZyUXp0UlFVTjJSQ3hQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRPMUZCUXpGQ0xFMUJRVTBzVFVGQlRTeEhRVUZITEUxQlFVMHNTVUZCU1N4dFFrRkJiVUlzUlVGQlJUdGhRVU16UXl4alFVRmpMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVOQlFVTXNZMEZCWXl4RlFVRkZMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zVTBGQlV5eEZRVU53UlN4SlFVRkpMRU5CUVVNc1kwRkJZeXhGUVVGRkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVWQlFVVXNTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeERRVUZETEVOQlFVTTdVVUZETDBRc1QwRkJUeXhEUVVGRExFOUJRVThzUTBGQlF5eFhRVUZYTEVOQlFVTXNRMEZCUXp0UlFVTTNRaXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEdsQ1FVRnBRaXhEUVVGRExFMUJRVTBzUTBGQlF5eFZRVUZWTEVWQlFVVXNUVUZCVFN4RFFVRkRMRmxCUVZrc1EwRkJReXhEUVVGRE8xRkJSWFpGTEhkRlFVRjNSVHRSUVVONFJTeE5RVUZOTEVsQlFVa3NUMEZCVHl4RFFVRlBMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVU3V1VGRGJFTXNWVUZCVlN4RFFVRkRMRWRCUVVjc1JVRkJSVHRuUWtGRFpDeFBRVUZQTEVWQlFVVXNRMEZCUXp0WlFVTmFMRU5CUVVNc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF6dFJRVU5XTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUlVnc1RVRkJUU3hUUVVGVExFZEJRVWNzVFVGQlRTeEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTXNTVUZCU1N4RlFVRkZMRVZCUVVVN1dVRkRia1VzU1VGQlNTeEpRVUZKTEVOQlFVTXNXVUZCV1R0blFrRkRia0lzU1VGQlNTeERRVUZETEZsQlFWa3NRMEZCUXl4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eFZRVUZWTEVWQlFVVXNSVUZCUlN4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExGbEJRVmtzUlVGQlJTeERRVUZETEVOQlFVTTdVVUZEY0VZc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRlNDeFRRVUZUTEhGQ1FVRnhRaXhEUVVGRExFbEJRV2RDTzFsQlF6ZERMRTlCUVU4c1NVRkJTU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUXpsRkxFTkJRVU03VVVGRlJDeFBRVUZQTEhGQ1FVRnhRaXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzBsQlF6RkRMRU5CUVVNN1EwRkRTanRCUVVWRUxFMUJRVTBzYVVKQlFXbENMRWRCUVVjN1NVRkRlRUlzVFVGQlRTeEZRVUZGTEZkQlFWYzdTVUZEYmtJc1QwRkJUeXhGUVVGRkxGZEJRVmM3UTBGRGNrSXNRMEZCUXp0QlFVbEdMRTFCUVUwc1QwRkJUeXhyUWtGQmEwSTdTVUZEYmtJc1QwRkJUeXhEUVVGcFF6dEpRVU5vUkRzN096czdPenRMUVU5RE8wbEJRMFFzV1VGQldTeEpRVUZyUWl4RlFVRkZMRTFCUVRKQ0xFVkJRVVVzVDBGQmRVSXNSVUZEYkVZc1QwRkJhVUlzUlVGQlJTeHRRa0ZCT0VNc1JVRkJSU3hQUVVGblFqdFJRVU51Uml4TlFVRk5MRkZCUVZFc1IwRkJjVUlzUlVGQlJTeERRVUZETzFGQlEzUkRMRXRCUVVzc1NVRkJTU3hIUVVGSExFZEJRVWNzUTBGQlF5eEZRVUZGTEVkQlFVY3NSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hGUVVGRkxFVkJRVVVzUjBGQlJ5eEZRVUZGTzFsQlF6ZERMRTFCUVUwc1QwRkJUeXhIUVVGSExFbEJRVWtzVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExGVkJRVlVzUTBGQlF5eFBRVUZQTEVOQlFVTXNZMEZCWXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRGJFWXNVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dFpRVU4yUWl4SlFVRkpMR05CUVdNc1IwRkJSeXhKUVVGSkxFTkJRVU03V1VGRE1VSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVVzUlVGQlJTeERRVUZETEVWQlFVVTdaMEpCUTNwRExFbEJRVWtzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhQUVVGUExFVkJRVVU3YjBKQlEzaERMR05CUVdNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRE8yOUNRVU4wUXl4TlFVRk5PMmxDUVVOUU8yRkJRMFk3V1VGRFJDeEpRVUZKTEdkQ1FVRm5RaXhEUVVGRExFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RlFVRkZPMmRDUVVOc1F5eExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJUdHZRa0ZEZWtNc1NVRkJTU3hKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzN2QwSkJRM0JETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUjBGQlJ5eEpRVUZKTEZGQlFWRXNRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNTMEZCU3l4RlFVRkZMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenM3ZDBKQlJYUkZMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNSMEZCUnl4SlFVRkpMRkZCUVZFc1EwRkJReXhqUVVGakxFTkJRVU1zUTBGQlF6dHBRa0ZETDBNN1lVRkRSanRUUVVOR08xRkJSVVFzU1VGQlNTeE5RVUZOTEVsQlFVa3NUVUZCVFN4RlFVRkZPMWxCUTNCQ0xFbEJRVWtzUTBGQlF5eFBRVUZQTEVkQlFVY3NTVUZCU1N4WFFVRlhMRU5CUVVNN1owSkJRemRDTEVsQlFVa3NSVUZCUlN4SlFVRkpPMmRDUVVOV0xHTkJRV01zUlVGQlJTeFBRVUZQTzJkQ1FVTjJRaXhYUVVGWExFVkJRVVVzVVVGQlVUdG5Ra0ZEY2tJc1kwRkJZeXhGUVVGRkxFOUJRVThzUTBGQlF5eGpRVUZqTzJkQ1FVTjBReXhQUVVGUExFVkJRVVVzVDBGQlR6dG5Ra0ZEYUVJc2FVSkJRV2xDTEVWQlFVVXNiVUpCUVcxQ08yZENRVU4wUXl4SFFVRkhMRTlCUVU4N1lVRkRXQ3hEUVVGRExFTkJRVU03VTBGRFNqdGhRVUZOTEVsQlFVa3NUVUZCVFN4SlFVRkpMRTlCUVU4c1JVRkJSVHRaUVVNMVFpeEpRVUZKTEVOQlFVTXNUMEZCVHl4SFFVRkhMRWxCUVVrc1YwRkJWeXhEUVVGRE8yZENRVU0zUWl4SlFVRkpMRVZCUVVVc1NVRkJTVHRuUWtGRFZpeGpRVUZqTEVWQlFVVXNUMEZCVHp0blFrRkRka0lzVjBGQlZ5eEZRVUZGTEZGQlFWRTdaMEpCUTNKQ0xHTkJRV01zUlVGQlJTeFBRVUZQTEVOQlFVTXNZMEZCWXp0blFrRkRkRU1zVDBGQlR5eEZRVUZGTEU5QlFVODdaMEpCUTJoQ0xHbENRVUZwUWl4RlFVRkZMRzFDUVVGdFFqdG5Ra0ZEZEVNc1IwRkJSeXhQUVVGUE8yRkJRMWdzUTBGQlF5eERRVUZETzFOQlEwbzdTVUZEU0N4RFFVRkRPMGxCUlVRN096czdPenM3TzB0QlVVTTdTVUZEVFN4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVGRExGbEJRWEZDTEV0QlFVczdVVUZETDBNc1NVRkJTU3hKUVVGSkxFTkJRVU1zVDBGQlR5eExRVUZMTEZOQlFWTTdXVUZETlVJc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5d3dRa0ZCTUVJc1EwRkJReXhEUVVGRE8xRkJSVGxETEVsQlFVa3NVMEZCVXl4SFFVRkhMRTFCUVUwc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eFRRVUZUTEVWQlFVVXNRMEZCUXp0UlFVVXZReXhKUVVGSkxGTkJRVk03V1VGRFdDeFRRVUZUTEVkQlFVY3NaVUZCWlN4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRE8xRkJSWHBETEU5QlFVOHNVMEZCVXl4RFFVRkRPMGxCUTI1Q0xFTkJRVU03U1VGRlJEczdPenM3TzB0QlRVTTdTVUZEUkN4TlFVRk5MRU5CUVVNc2MwSkJRWE5DTEVOQlFVTXNVVUZCTkVJN1VVRkRlRVFzVDBGQlR5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMR2RDUVVGblFpeERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRha1FzUTBGQlF6dEpRVVZFT3pzN096dExRVXRETzBsQlEwUXNUVUZCVFN4TFFVRkxMR2RDUVVGblFqdFJRVU42UWl4UFFVRlBMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zYVVKQlFXbENMRU5CUVVNc1EwRkJRenRKUVVONFF5eERRVUZETzBsQlJVUTdPenM3TzB0QlMwTTdTVUZEUkN4TlFVRk5MRXRCUVVzc1owSkJRV2RDTzFGQlEzcENMRWxCUVVrc1IwRkJSeXhIUVVGaExFVkJRVVVzUTBGQlF6dFJRVU4yUWl4TlFVRk5MRU5CUVVNc1RVRkJUU3hEUVVGRExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVWQlFVVTdXVUZET1VNc1RVRkJUU3hMUVVGTExFZEJRVWNzVFVGQlRTeERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJRenRaUVVOcVF5eEhRVUZITEVkQlFVY3NRMEZCUXl4SFFVRkhMRWRCUVVjc1JVRkJSU3hIUVVGSExFdEJRVXNzUTBGQlF5eERRVUZETzFGQlF6TkNMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRMGdzVDBGQlR5eEhRVUZITEVOQlFVTTdTVUZEWWl4RFFVRkRPME5CUTBvaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2UwTnZiM0prYVc1aGRHVnpMQ0JFYVhOMFlXNWpaVTFsZEhKcFl5d2dUV0YwY21sNExDQlBjSFJwYjI1ekxDQldaV04wYjNJc0lGWmxZM1J2Y25OOVhHNGdJR1p5YjIwZ0owQmtZWFJoWjNKdmF5MXNhV0p5WVhKcFpYTXZkWFJwYkhNdmMzSmpMM1I1Y0dVdFpHVmpiR0Z5WVhScGIyNXpKenRjYm1sdGNHOXlkQ0I3UVhaaGFXeGhZbXhsUkdGMFlWUjVjR1Z6TENCQmRtRnBiR0ZpYkdWTlpYUnlhV056TENCTGJtOTNiazFsZEhKcFkzTXNJRTFsWVhOMWNtVXNJR2x6UW1sMFFYSnlZWGxOWlhSeWFXTjlJR1p5YjIwZ0p5NHVMM1I1Y0dWa0xXMWxkSEpwWTNNbk8xeHVhVzF3YjNKMElIdEVhWE4wWVc1alpVMWhkSEpwZUZObGNuWnBZMlY5SUdaeWIyMGdKeTR1TDJScGMzUmhibU5sTFcxaGRISnBlQ2M3WEc1cGJYQnZjblFnZTBScGMzUmhibU5sUVdkbmNtVm5ZWFJwYjI1TlpYUm9iMlI5SUdaeWIyMGdKeTR1TDJScGMzUmhibU5sTFcxaGRISnBlQzkwZVhCbGN5YzdYRzVwYlhCdmNuUWdlMVZOUVZCOUlHWnliMjBnSnk0dUwzVnRZWEFuTzF4dWFXMXdiM0owSUh0aGMzTmxjblFzSUhSeVlXNXpjRzl6WlUxaGRISnBlSDBnWm5KdmJTQW5RR1JoZEdGbmNtOXJMV3hwWW5KaGNtbGxjeTkxZEdsc2N5OXpjbU12ZG1WamRHOXlMVzl3WlhKaGRHbHZibk1uTzF4dWFXMXdiM0owSUh0VGNHRnljMlZOWVhSeWFYaFRaWEoyYVdObGZTQm1jbTl0SUNjdUxpOWthWE4wWVc1alpTMXRZWFJ5YVhndmMzQmhjbk5sTFcxaGRISnBlQzF6WlhKMmFXTmxKenRjYm1sdGNHOXlkQ0I3UkdsdFVtVmtkV04wYVc5dVRXVjBhRzlrYzMwZ1puSnZiU0FuTGk5MGVYQmxjeWM3WEc1cGJYQnZjblFnUW1sMFFYSnlZWGtnWm5KdmJTQW5RR1JoZEdGbmNtOXJMV3hwWW5KaGNtbGxjeTkxZEdsc2N5OXpjbU12WW1sMExXRnljbUY1Snp0Y2JtbHRjRzl5ZENCelpXVmtVbUZ1Wkc5dElHWnliMjBnSjNObFpXUnlZVzVrYjIwbk8xeHVMeTlwYlhCdmNuUWdlMVJUVGtWOUlHWnliMjBnSjBCclpXTnJaV3gwTDNSemJtVW5PMXh1YVcxd2IzSjBJSHRVVTA1RmZTQm1jbTl0SUNjdUxpOTBMWE51WlM5MExYTnVaU2M3WEc1Y2JtVjRjRzl5ZENCcGJuUmxjbVpoWTJVZ1NWVk5RVkJQY0hScGIyNXpJSHRjYmlBZ0lDQnNaV0Z5Ym1sdVoxSmhkR1UvT2lCdWRXMWlaWEk3WEc0Z0lDQWdia052YlhCdmJtVnVkSE0vT2lCdWRXMWlaWEk3WEc0Z0lDQWdia1Z3YjJOb2N6ODZJRzUxYldKbGNqdGNiaUFnSUNCdVRtVnBaMmhpYjNKelB6b2diblZ0WW1WeU8xeHVJQ0FnSUhOd2NtVmhaRDg2SUc1MWJXSmxjanRjYmlBZ0lDQnRhVzVFYVhOMFB6b2diblZ0WW1WeU8xeHVJQ0FnSUhCeWIyZHlaWE56Um5WdVl6ODZJQ2hsY0c5ak9pQnVkVzFpWlhJc0lHVndiMk5vYzB4bGJtZDBhRG9nYm5WdFltVnlMQ0JsYldKbFpHUnBibWR6T2lCdWRXMWlaWEpiWFZ0ZEtTQTlQaUIyYjJsa08xeHVJQ0FnSUhKaGJtUnZiVk5sWldRL09pQnpkSEpwYm1jN1hHNTlYRzVjYm1WNGNHOXlkQ0JwYm5SbGNtWmhZMlVnU1ZSVFRrVlBjSFJwYjI1eklIdGNiaUFnSUNCbGNITnBiRzl1UHpvZ2JuVnRZbVZ5TzF4dUlDQWdJSEJsY25Cc1pYaHBkSGsvT2lCdWRXMWlaWEk3WEc0Z0lDQWdaR2x0UHpvZ2JuVnRZbVZ5TzF4dWZWeHVYRzVsZUhCdmNuUWdhVzUwWlhKbVlXTmxJRWxFYVcxU1pXUjFZM1JwYjI1UVlYSmhiVHhVSUdWNGRHVnVaSE1nYm5WdFltVnlJSHdnYzNSeWFXNW5JRDBnYm5WdFltVnlQaUI3WEc0Z0lDQWdkV2xPWVcxbE9pQnpkSEpwYm1jN1hHNGdJQ0FnZG1Gc2RXVTZJQ2hVSUdWNGRHVnVaSE1nYm5WdFltVnlJRDhnYm5WdFltVnlJRG9nYzNSeWFXNW5LU0I4SUc1MWJHdzdYRzRnSUNBZ2RHOXZiSFJwY0RvZ2MzUnlhVzVuTzF4dUlDQWdJSFI1Y0dVL09pQlVJR1Y0ZEdWdVpITWdiblZ0WW1WeUlEOGdKMjUxYldKbGNpY2dPaUFuYzNSeWFXNW5KenRjYmlBZ0lDQndiR0ZqWldodmJHUmxjajg2SUhOMGNtbHVaenRjYmlBZ0lDQnRhVzQvT2lCdWRXMWlaWEk3WEc0Z0lDQWdiV0Y0UHpvZ2JuVnRZbVZ5TzF4dUlDQWdJSE4wWlhBL09pQnVkVzFpWlhJN1hHNTlYRzVjYm1GaWMzUnlZV04wSUdOc1lYTnpJRTExYkhScFEyOXNkVzF1VW1Wa2RXTmxjaUI3WEc0Z0lDQWdjSEp2ZEdWamRHVmtJR1JoZEdFNklGWmxZM1J2Y25OYlhUdGNiaUFnSUNCd2NtOTBaV04wWldRZ2QyVnBaMmgwY3pvZ2JuVnRZbVZ5VzEwN1hHNGdJQ0FnY0hKdmRHVmpkR1ZrSUdGblozSmxaMkYwYVc5dVRXVjBhRzlrT2lCRWFYTjBZVzVqWlVGblozSmxaMkYwYVc5dVRXVjBhRzlrTzF4dUlDQWdJR052Ym5OMGNuVmpkRzl5S0c5d2RHbHZibk02SUU5d2RHbHZibk1wSUh0Y2JpQWdJQ0FnSUhSb2FYTXVaR0YwWVNBOUlHOXdkR2x2Ym5NdVpHRjBZVHRjYmlBZ0lDQWdJSFJvYVhNdWQyVnBaMmgwY3lBOUlHOXdkR2x2Ym5NdWQyVnBaMmgwY3p0Y2JpQWdJQ0FnSUhSb2FYTXVZV2RuY21WbllYUnBiMjVOWlhSb2IyUWdQU0J2Y0hScGIyNXpMbUZuWjNKbFoyRjBhVzl1VFdWMGFHOWtPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHFLaUJGYldKbFpITWdkR2hsSUdSaGRHRWdaMmwyWlc0Z2FXNTBieUIwYUdVZ2RIZHZMV1JwYldWdWMybHZibUZzSUhOd1lXTmxMbHh1SUNBZ0lDQXFJRUJ5WlhSMWNtNGdlMkZ1ZVgwZ1EyRnlkR1Z6YVdGdUlHTnZiM0prYVc1aGRHVWdiMllnZEdocGN5QmxiV0psWkdScGJtY2dZVzVrSUdScGMzUmhibU5sSUcxaGRISnBlQ0IzYUdWeVpTQmhjSEJzYVdOaFlteGxMaUFxTDF4dUlDQWdJR0ZpYzNSeVlXTjBJSFJ5WVc1elptOXliU2dwT2lCUWNtOXRhWE5sUEUxaGRISnBlRDQ3WEc1OVhHNWNibU5zWVhOeklGUlRUa1ZTWldSMVkyVnlJR1Y0ZEdWdVpITWdUWFZzZEdsRGIyeDFiVzVTWldSMVkyVnlJSHRjYmlBZ0lDQndjbTkwWldOMFpXUWdjbVZrZFdObGNqb2dWRk5PUlR0Y2JpQWdJQ0J3Y205MFpXTjBaV1FnYVhSbGNtRjBhVzl1Y3pvZ2JuVnRZbVZ5TzF4dUlDQWdJSEJ5YjNSbFkzUmxaQ0JrYVhOMFlXNWpaVVp1WVcxbGN6b2dTMjV2ZDI1TlpYUnlhV056VzEwN1hHNGdJQ0FnY0hKdmRHVmpkR1ZrSUdScGMzUmhibU5sUm01ek9pQW9LR0U2SUdGdWVTd2dZam9nWVc1NUtTQTlQaUJ1ZFcxaVpYSXBXMTA3WEc0Z0lDQWdjSEp2ZEdWamRHVmtJR1JwYzNSaGJtTmxSbTVCY21kek9pQjdXMTg2SUhOMGNtbHVaMTA2SUdGdWVYMWJYVHRjYmlBZ0lDQndjbTkwWldOMFpXUWdjSEp2WjNKbGMzTkdkVzVqUHpvZ0tHVndiMk02SUc1MWJXSmxjaXdnWlhCdlkyaHpUR1Z1WjNSb09pQnVkVzFpWlhJc0lHVnRZbVZrWkdsdVozTS9PaUJ1ZFcxaVpYSmJYVnRkS1NBOVBpQjJiMmxrTzF4dUlDQWdJQzhxS2x4dUlDQWdJQ0FxSUVOeVpXRjBaWE1nWVc0Z2FXNXpkR0Z1WTJVZ2IyWWdWRk5PUlZKbFpIVmpaWEl1WEc0Z0lDQWdJQ29nUUhCaGNtRnRJSHRQY0hScGIyNXpmU0J2Y0hScGIyNXpJRTl3ZEdsdmJuTWdkRzhnY0dGemN5QjBieUIwYUdVZ1kyOXVjM1J5ZFdOMGIzSXVYRzRnSUNBZ0lDb2dRRzFsYldKbGNtOW1JRlJUVGtWU1pXUjFZMlZ5WEc0Z0lDQWdJQ292WEc0Z0lDQWdZMjl1YzNSeWRXTjBiM0lvYjNCMGFXOXVjem9nVDNCMGFXOXVjeWtnZTF4dUlDQWdJQ0FnYzNWd1pYSW9iM0IwYVc5dWN5azdYRzRnSUNBZ0lDQmpiMjV6ZENCeVlXNWtiMjFUWldWa09pQnpkSEpwYm1jZ1BTQnZjSFJwYjI1ekxuSmhibVJ2YlZObFpXUWdQejhnUkdGMFpTZ3BPMXh1SUNBZ0lDQWdZMjl1YzNRZ2NtRnVaRzl0Um00Z1BTQnpaV1ZrVW1GdVpHOXRLSEpoYm1SdmJWTmxaV1FwTzF4dUlDQWdJQ0FnYjNCMGFXOXVjeTV5WVc1a2IyMGdQU0J5WVc1a2IyMUdianRjYmlBZ0lDQWdJSFJvYVhNdWNtVmtkV05sY2lBOUlHNWxkeUJVVTA1RktHOXdkR2x2Ym5NcE8xeHVJQ0FnSUNBZ2RHaHBjeTVwZEdWeVlYUnBiMjV6SUQwZ2IzQjBhVzl1Y3o4dWFYUmxjbUYwYVc5dWN5QS9QeUIwYUdsekxuSmxaSFZqWlhJdVoyVjBTWFJsY2xOcGVtVW9kR2hwY3k1a1lYUmhXekJkTG14bGJtZDBhQ2s3WEc0Z0lDQWdJQ0IwYUdsekxtUnBjM1JoYm1ObFJtNWhiV1Z6SUQwZ2IzQjBhVzl1Y3k1a2FYTjBZVzVqWlVadVlXMWxjenRjYmlBZ0lDQWdJSFJvYVhNdVpHbHpkR0Z1WTJWR2JuTWdQU0J2Y0hScGIyNXpMbVJwYzNSaGJtTmxSbTV6TzF4dUlDQWdJQ0FnZEdocGN5NWthWE4wWVc1alpVWnVRWEpuY3lBOUlHOXdkR2x2Ym5NdVpHbHpkR0Z1WTJWR2JrRnlaM003WEc0Z0lDQWdJQ0IwYUdsekxuQnliMmR5WlhOelJuVnVZeUE5SUc5d2RHbHZibk11Y0hKdlozSmxjM05HZFc1ak8xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4cUtseHVJQ0FnSUNBcUlFVnRZbVZrY3lCMGFHVWdaR0YwWVNCbmFYWmxiaUJwYm5SdklIUm9aU0IwZDI4dFpHbHRaVzV6YVc5dVlXd2djM0JoWTJVZ2RYTnBibWNnZEMxVFRrVWdiV1YwYUc5a0xseGNYRzRnSUNBZ0lDb2dRSEJoY21GdElIdGliMjlzWldGdWZTQmJjR0Z5WVd4c1pXeEVhWE4wWVc1alpWZHZjbXRsY25OZElGZG9aWFJvWlhJZ2RHOGdkWE5sSUhCaGNtRnNiR1ZzSUdScGMzUmhibU5sSUhkdmNtdGxjbk11WEc0Z0lDQWdJQ29nUUhKbGRIVnliaUI3WVc1NWZTQkRZWEowWlhOcFlXNGdZMjl2Y21ScGJtRjBaU0J2WmlCMGFHbHpJR1Z0WW1Wa1pHbHVaeUJoYm1RZ1pHbHpkR0Z1WTJVZ2JXRjBjbWw0SUhkb1pYSmxJR0Z3Y0d4cFkyRmliR1V1WEc0Z0lDQWdJQ292WEc0Z0lDQWdjSFZpYkdsaklHRnplVzVqSUhSeVlXNXpabTl5YlNncE9pQlFjbTl0YVhObFBFMWhkSEpwZUQ0Z2UxeHVJQ0FnSUNBZ2FXWWdLSFJvYVhNdVpHRjBZVnN3WFM1c1pXNW5kR2dnUGlBeE1EQXdNQ2xjYmlBZ0lDQWdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLQ2ROWVhocGJYVnRJRzUxYldKbGNpQnZaaUJ6WVcxd2JHVnpJR1p2Y2lCVUxWTk9SU0JwY3lBeE1EQXdNQ2NwTzF4dUlDQWdJQ0FnWTI5dWMzUWdiV0YwY21sNFUyVnlkbWxqWlNBOUlHNWxkeUJFYVhOMFlXNWpaVTFoZEhKcGVGTmxjblpwWTJVb2RISjFaU3dnWm1Gc2MyVXBPMXh1SUNBZ0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUNBZ0x5OGdZMjl1YzNRZ1lXZG5jbVZuWVhSbElEMGdaMlYwUVdkbmNtVm5ZWFJwYjI1R2RXNWpkR2x2YmloMGFHbHpMbUZuWjNKbFoyRjBhVzl1VFdWMGFHOWtMQ0IwYUdsekxuZGxhV2RvZEhNcE8xeHVJQ0FnSUNBZ0lDQXZMeUJqYjI1emRDQmthWE4wWVc1alpYTTZJRUZ5Y21GNVBFWnNiMkYwTXpKQmNuSmhlVDRnUFNCYlhUdGNiaUFnSUNBZ0lDQWdMeThnWm05eUlDaHNaWFFnYVNBOUlEQTdJR2tnUENCMGFHbHpMbVJoZEdFdWJHVnVaM1JvT3lBcksya3BJSHRjYmlBZ0lDQWdJQ0FnTHk4Z0lDQmpiMjV6ZENCa2FYTjBJRDBnWVhkaGFYUWdiV0YwY21sNFUyVnlkbWxqWlM1allXeGpLSFJvYVhNdVpHRjBZVnRwWFN3Z2RHaHBjeTVrYVhOMFlXNWpaVVp1WVcxbGMxdHBYU3dnWm1Gc2MyVXNJSFJvYVhNdVpHbHpkR0Z1WTJWR2JrRnlaM05iYVYwcE8xeHVJQ0FnSUNBZ0lDQXZMeUFnSUdScGMzUmhibU5sY3k1d2RYTm9LR1JwYzNRcE8xeHVJQ0FnSUNBZ0lDQXZMeUI5WEc0Z0lDQWdJQ0FnSUM4dklHTnZibk4wSUdScGMzUmhibU5sSUQwZ2JtVjNJRVpzYjJGME16SkJjbkpoZVNoa2FYTjBZVzVqWlhOYk1GMHViR1Z1WjNSb0tTNW1hV3hzS0RBcE8xeHVJQ0FnSUNBZ0lDQXZMeUJtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdScGMzUmhibU5sYzFzd1hTNXNaVzVuZEdnN0lDc3JhU2xjYmlBZ0lDQWdJQ0FnTHk4Z0lDQmthWE4wWVc1alpWdHBYU0E5SUdGblozSmxaMkYwWlNoa2FYTjBZVzVqWlhNdWJXRndLQ2hrS1NBOVBpQmtXMmxkS1NrN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdScGMzUmhibU5sSUQwZ1lYZGhhWFFnYldGMGNtbDRVMlZ5ZG1salpTNWpZV3hqVFhWc2RHa29kR2hwY3k1a1lYUmhMQ0IwYUdsekxtUnBjM1JoYm1ObFJtNWhiV1Z6TENCbVlXeHpaU3dnZEdocGN5NWthWE4wWVc1alpVWnVRWEpuY3l4Y2JpQWdJQ0FnSUNBZ0lDQjBhR2x6TG5kbGFXZG9kSE1zSUhSb2FYTXVZV2RuY21WbllYUnBiMjVOWlhSb2IyUXBPMXh1SUNBZ0lDQWdJQ0J0WVhSeWFYaFRaWEoyYVdObExuUmxjbTFwYm1GMFpTZ3BPMXh1SUNBZ0lDQWdJQ0F2THlCamIyNXpkQ0J0WVhSeWFYaFFjbTk0ZVNBOUlHUnBjM1JoYm1ObFRXRjBjbWw0VUhKdmVIa29aR2x6ZEdGdVkyVXNJSFJvYVhNdVpHRjBZVnN3WFM1c1pXNW5kR2dwTzF4dUlDQWdJQ0FnSUNCMGFHbHpMbkpsWkhWalpYSXVhVzVwZEVSaGRHRkVhWE4wS0dScGMzUmhibU5sTENCMGFHbHpMbVJoZEdGYk1GMHViR1Z1WjNSb0tUdGNibHh1SUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhSb2FYTXVhWFJsY21GMGFXOXVjenNnS3l0cEtTQjdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXlaV1IxWTJWeUxuTjBaWEFvS1RzZ0x5OGdaWFpsY25rZ2RHbHRaU0I1YjNVZ1kyRnNiQ0IwYUdsekxDQnpiMngxZEdsdmJpQm5aWFJ6SUdKbGRIUmxjbHh1SUNBZ0lDQWdJQ0FnSUdsbUlDaDBhR2x6TG5CeWIyZHlaWE56Um5WdVl5bGNiaUFnSUNBZ0lDQWdJQ0FnSUhSb2FYTXVjSEp2WjNKbGMzTkdkVzVqS0drc0lIUm9hWE11YVhSbGNtRjBhVzl1Y3l3Z1cxMHBPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUIwYUdsekxuSmxaSFZqWlhJdVoyVjBVMjlzZFhScGIyNG9LVHRjYmlBZ0lDQWdJSDBnWTJGMFkyZ2dLR1VwSUh0Y2JpQWdJQ0FnSUNBZ2JXRjBjbWw0VTJWeWRtbGpaUzUwWlhKdGFXNWhkR1VvS1R0Y2JpQWdJQ0FnSUNBZ2RHaHliM2NnWlR0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5WEc1OVhHNWNibU5zWVhOeklGVk5RVkJTWldSMVkyVnlJR1Y0ZEdWdVpITWdUWFZzZEdsRGIyeDFiVzVTWldSMVkyVnlJSHRjYmlBZ0lDQndjbTkwWldOMFpXUWdjbVZrZFdObGNqb2dWVTFCVUR0Y2JpQWdJQ0J3Y205MFpXTjBaV1FnWkdsemRHRnVZMlZHYm1GdFpYTTZJRXR1YjNkdVRXVjBjbWxqYzF0ZE8xeHVJQ0FnSUhCeWIzUmxZM1JsWkNCa2FYTjBZVzVqWlVadWN6b2dSblZ1WTNScGIyNWJYVHRjYmlBZ0lDQndjbTkwWldOMFpXUWdkbVZqZEc5eWN6b2diblZ0WW1WeVcxMDdYRzRnSUNBZ2NISnZkR1ZqZEdWa0lIQnliMmR5WlhOelJuVnVZejg2SUNobGNHOWpPaUJ1ZFcxaVpYSXNJR1Z3YjJOb2MweGxibWQwYURvZ2JuVnRZbVZ5TENCbGJXSmxaR1JwYm1jNklHNTFiV0psY2x0ZFcxMHBJRDArSUhadmFXUTdYRzRnSUNBZ2NISnZkR1ZqZEdWa0lHUnBjM1JoYm1ObFJtNUJjbWR6T2lCN1cxODZJSE4wY21sdVoxMDZJR0Z1ZVgxYlhUdGNiaUFnSUNBdktpcGNiaUFnSUNBZ0tpQkRjbVZoZEdWeklHRnVJR2x1YzNSaGJtTmxJRzltSUZWTlFWQlNaV1IxWTJWeUxseHVJQ0FnSUNBcUlFQndZWEpoYlNCN1QzQjBhVzl1YzMwZ2IzQjBhVzl1Y3lCUGNIUnBiMjV6SUhSdklIQmhjM01nZEc4Z2RHaGxJR052Ym5OMGNuVmpkRzl5TGx4dUlDQWdJQ0FxSUVCdFpXMWlaWEp2WmlCVlRVRlFVbVZrZFdObGNseHVJQ0FnSUNBcUwxeHVJQ0FnSUdOdmJuTjBjblZqZEc5eUtHOXdkR2x2Ym5NNklFOXdkR2x2Ym5NcElIdGNiaUFnSUNBZ0lHTnZibk4wSUhKaGJtUnZiVk5sWldRNklITjBjbWx1WnlBOUlHOXdkR2x2Ym5NdWNtRnVaRzl0VTJWbFpDQS9QeUJFWVhSbEtDazdYRzRnSUNBZ0lDQmpiMjV6ZENCeVlXNWtiMjFHYmlBOUlITmxaV1JTWVc1a2IyMG9jbUZ1Wkc5dFUyVmxaQ2s3WEc0Z0lDQWdJQ0J6ZFhCbGNpaHZjSFJwYjI1ektUdGNiaUFnSUNBZ0lHRnpjMlZ5ZENnblpHbHpkR0Z1WTJWR2JtRnRaWE1uSUdsdUlHOXdkR2x2Ym5NcE8xeHVJQ0FnSUNBZ1lYTnpaWEowS0Nka2FYTjBZVzVqWlVadWN5Y2dhVzRnYjNCMGFXOXVjeWs3WEc0Z0lDQWdJQ0IwYUdsekxtUnBjM1JoYm1ObFJtNUJjbWR6SUQwZ2IzQjBhVzl1Y3k1a2FYTjBZVzVqWlVadVFYSm5jenRjYmlBZ0lDQWdJSFJvYVhNdVpHbHpkR0Z1WTJWR2JuTWdQU0J2Y0hScGIyNXpMbVJwYzNSaGJtTmxSbTV6SVR0Y2JpQWdJQ0FnSUhSb2FYTXVjSEp2WjNKbGMzTkdkVzVqSUQwZ2IzQjBhVzl1Y3k1d2NtOW5jbVZ6YzBaMWJtTTdYRzVjYmlBZ0lDQWdJSFJvYVhNdVpHbHpkR0Z1WTJWR2JtRnRaWE1nUFNCdmNIUnBiMjV6TG1ScGMzUmhibU5sUm01aGJXVnpJVHRjYmlBZ0lDQWdJQzh2VlcxaGNDQjFjMlZ6SUhabFkzUnZjaUJwYm1SbGVHbHVaeXdnYzI4Z2QyVWdibVZsWkNCMGJ5QmpjbVZoZEdVZ1lXNGdZWEp5WVhrZ2IyWWdkbVZqZEc5eWN5QmhjeUJwYm1SbFkyVnpMbHh1SUNBZ0lDQWdkR2hwY3k1MlpXTjBiM0p6SUQwZ2JtVjNJRUZ5Y21GNUtIUm9hWE11WkdGMFlWc3dYUzVzWlc1bmRHZ3BMbVpwYkd3b01Da3ViV0Z3S0NoZkxDQnBLU0E5UGlCcEtUdGNibHh1SUNBZ0lDQWdhV1lnS0hSb2FYTXVaR0YwWVZzd1hTNXNaVzVuZEdnZ1BEMGdLRzl3ZEdsdmJuTXViazVsYVdkb1ltOXljeUEvUHlBeE5Ta3BYRzRnSUNBZ0lDQWdJRzl3ZEdsdmJuTXViazVsYVdkb1ltOXljeUE5SUhSb2FYTXVaR0YwWVZzd1hTNXNaVzVuZEdnZ0xTQXhPMXh1SUNBZ0lDQWdiM0IwYVc5dWN5NXlZVzVrYjIwZ1BTQnlZVzVrYjIxR2JqdGNiaUFnSUNBZ0lIUm9hWE11Y21Wa2RXTmxjaUE5SUc1bGR5QlZUVUZRS0c5d2RHbHZibk1wTzF4dUlDQWdJQ0FnTHk4Z2RHaHBjeTV5WldSMVkyVnlMbVJwYzNSaGJtTmxSbTRnUFNCMGFHbHpMbDlsYm1OdlpHVmtSR2x6ZEdGdVkyVXVZbWx1WkNoMGFHbHpLVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQXZLaXBjYmlBZ0lDQWdLaUJGYldKbFpITWdkR2hsSUdSaGRHRWdaMmwyWlc0Z2FXNTBieUIwYUdVZ2RIZHZMV1JwYldWdWMybHZibUZzSUhOd1lXTmxJSFZ6YVc1bklGVk5RVkFnYldWMGFHOWtMbHh1SUNBZ0lDQXFJRUJ3WVhKaGJTQjdZbTl2YkdWaGJuMGdXMTl3WVhKaGJHeGxiRVJwYzNSaGJtTmxWMjl5YTJWeWMxMGdWMmhsZEdobGNpQjBieUIxYzJVZ2NHRnlZV3hzWld3Z1pHbHpkR0Z1WTJVZ2JXRjBjbWw0SUhkdmNtdGxjbk11WEc0Z0lDQWdJQ29nUUhKbGRIVnliaUI3WVc1NWZTQkRZWEowWlhOcFlXNGdZMjl2Y21ScGJtRjBaU0J2WmlCMGFHbHpJR1Z0WW1Wa1pHbHVaeTVjYmlBZ0lDQWdLaTljYmlBZ0lDQndkV0pzYVdNZ1lYTjVibU1nZEhKaGJuTm1iM0p0S0Y5d1lYSmhiR3hsYkVScGMzUmhibU5sVjI5eWEyVnljejg2SUdKdmIyeGxZVzRwT2lCUWNtOXRhWE5sUEUxaGRISnBlRDRnZTF4dUlDQWdJQ0FnWTI5dWMyOXNaUzUwYVcxbEtDZHJibTRnWjNKaGNHZ25LVHRjYmlBZ0lDQWdJR052Ym5OMElHdHVibEpsY3lBOUlHRjNZV2wwSUc1bGR5QlRjR0Z5YzJWTllYUnlhWGhUWlhKMmFXTmxLQ2xjYmlBZ0lDQWdJQ0FnTG0xMWJIUnBRMjlzZFcxdVMwNU9LSFJvYVhNdVpHRjBZU3dnZEdocGN5NWthWE4wWVc1alpVWnVZVzFsY3l3Z2RHaHBjeTV5WldSMVkyVnlMbTVsYVdkb1ltOXljeXhjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMbVJwYzNSaGJtTmxSbTVCY21kekxDQjBhR2x6TG5kbGFXZG9kSE1zSUhSb2FYTXVZV2RuY21WbllYUnBiMjVOWlhSb2IyUXBPMXh1SUNBZ0lDQWdZMjl1YzI5c1pTNTBhVzFsUlc1a0tDZHJibTRnWjNKaGNHZ25LVHRjYmlBZ0lDQWdJSFJvYVhNdWNtVmtkV05sY2k1elpYUlFjbVZqYjIxd2RYUmxaRXRPVGlocmJtNVNaWE11YTI1dVNXNWtaWGhsY3l3Z2EyNXVVbVZ6TG10dWJrUnBjM1JoYm1ObGN5azdYRzVjYmlBZ0lDQWdJQzh2SUc1bFpXUmxaQ0J6YnlCMGFHRjBJR2RoY21KaFoyVWdZMjlzYkdWamRHOXlJR05oYmlCbWNtVmxJRzFsYlc5eWVTQm1jbTl0SUdScGMzUmhibU5sSUcxaGRISnBlRnh1SUNBZ0lDQWdZWGRoYVhRZ2JtVjNJRkJ5YjIxcGMyVThkbTlwWkQ0b0tISmxjMjlzZG1VcElEMCtJSHRjYmlBZ0lDQWdJQ0FnYzJWMFZHbHRaVzkxZENnb0tTQTlQaUI3WEc0Z0lDQWdJQ0FnSUNBZ2NtVnpiMngyWlNncE8xeHVJQ0FnSUNBZ0lDQjlMQ0F6TURBcE8xeHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJR052Ym5OMElHVnRZbVZrWkdsdVp5QTlJR0YzWVdsMElIUm9hWE11Y21Wa2RXTmxjaTVtYVhSQmMzbHVZeWgwYUdsekxuWmxZM1J2Y25Nc0lDaGxjRzlqS1NBOVBpQjdYRzRnSUNBZ0lDQWdJR2xtSUNoMGFHbHpMbkJ5YjJkeVpYTnpSblZ1WXlsY2JpQWdJQ0FnSUNBZ0lDQjBhR2x6TG5CeWIyZHlaWE56Um5WdVl5aGxjRzlqTENCMGFHbHpMbkpsWkhWalpYSXVaMlYwVGtWd2IyTm9jeWdwTENCMGFHbHpMbkpsWkhWalpYSXVaMlYwUlcxaVpXUmthVzVuS0NrcE8xeHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJR1oxYm1OMGFXOXVJR0Z5Y21GNVEyRnpkREpEYjI5eVpHbHVZWFJsY3loa1lYUmhPaUJ1ZFcxaVpYSmJYVnRkS1RvZ1EyOXZjbVJwYm1GMFpYTWdlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdibVYzSUVGeWNtRjVLR1JoZEdFdWJHVnVaM1JvS1M1bWFXeHNLREFwTG0xaGNDZ29YeXdnYVNrZ1BUNGdLRlpsWTNSdmNpNW1jbTl0S0dSaGRHRmJhVjBwS1NrN1hHNGdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lISmxkSFZ5YmlCaGNuSmhlVU5oYzNReVEyOXZjbVJwYm1GMFpYTW9aVzFpWldSa2FXNW5LVHRjYmlBZ0lDQjlYRzU5WEc1Y2JtTnZibk4wSUVGMllXbHNZV0pzWlZKbFpIVmpaWEp6SUQwZ2UxeHVJQ0FuVlUxQlVDYzZJRlZOUVZCU1pXUjFZMlZ5TEZ4dUlDQW5kQzFUVGtVbk9pQlVVMDVGVW1Wa2RXTmxjaXhjYm4wN1hHNWNibVY0Y0c5eWRDQjBlWEJsSUV0dWIzZHVUV1YwYUc5a2N5QTlJR3RsZVc5bUlIUjVjR1Z2WmlCQmRtRnBiR0ZpYkdWU1pXUjFZMlZ5Y3p0Y2JseHVaWGh3YjNKMElHTnNZWE56SUUxMWJIUnBRMjlzUkdsdFVtVmtkV05sY2lCN1hHNGdJQ0FnY0hKcGRtRjBaU0J5WldSMVkyVnlPaUJOZFd4MGFVTnZiSFZ0YmxKbFpIVmpaWElnZkNCMWJtUmxabWx1WldRN1hHNGdJQ0FnTHlvcVhHNGdJQ0FxSUVOeVpXRjBaWE1nWVc0Z2FXNXpkR0Z1WTJVZ2IyWWdSR2x0Wlc1emFXOXVZV3hwZEhsU1pXUjFZMlZ5TGx4dUlDQWdLaUJBY0dGeVlXMGdlMkZ1ZVZ0ZGZTQmtZWFJoSUZabFkzUnZjbk1nZEc4Z1pXMWlaV1F1WEc0Z0lDQXFJRUJ3WVhKaGJTQjdTMjV2ZDI1TlpYUm9iMlJ6ZlNCdFpYUm9iMlFnUlcxaVpXUmthVzVuSUcxbGRHaHZaQ0IwYnlCaVpTQmhjSEJzYVdWa1hHNGdJQ0FxSUVCd1lYSmhiU0I3UzI1dmQyNU5aWFJ5YVdOemZTQnRaWFJ5YVdNZ1JHbHpkR0Z1WTJVZ2JXVjBjbWxqSUhSdklHSmxJR052YlhCMWRHVmtJR0psZEhkbFpXNGdaV0ZqYUNCdlppQjBhR1VnZG1WamRHOXljeTVjYmlBZ0lDb2dRSEJoY21GdElIdFBjSFJwYjI1emZTQmJiM0IwYVc5dWMxMGdUM0IwYVc5dWN5QjBieUJ3WVhOeklIUnZJSFJvWlNCcGJYQnNaVzFsYm5ScGJtY2daVzFpWldSa1pYSnpMbHh1SUNBZ0tpQkFiV1Z0WW1WeWIyWWdSR2x0Wlc1emFXOXVZV3hwZEhsU1pXUjFZMlZ5WEc0Z0lDQXFMMXh1SUNBZ0lHTnZibk4wY25WamRHOXlLR1JoZEdFNklFRnljbUY1UEdGdWVWdGRQaXdnYldWMGFHOWtPaUJFYVcxU1pXUjFZM1JwYjI1TlpYUm9iMlJ6TENCdFpYUnlhV056T2lCTGJtOTNiazFsZEhKcFkzTmJYU3hjYmlBZ0lDQWdJSGRsYVdkb2RITTZJRzUxYldKbGNsdGRMQ0JrYVhOMFlXNWpaVUZuWjNKbFoyRjBhVzl1T2lCRWFYTjBZVzVqWlVGblozSmxaMkYwYVc5dVRXVjBhRzlrTENCdmNIUnBiMjV6T2lCUGNIUnBiMjV6S1NCN1hHNGdJQ0FnSUNCamIyNXpkQ0J0WldGemRYSmxjem9nUkdsemRHRnVZMlZOWlhSeWFXTmJYU0E5SUZ0ZE8xeHVJQ0FnSUNBZ1ptOXlJQ2hzWlhRZ2FXUjRJRDBnTURzZ2FXUjRJRHdnYldWMGNtbGpjeTVzWlc1bmRHZzdJQ3NyYVdSNEtTQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElHMWxZWE4xY21VZ1BTQnVaWGNnVFdWaGMzVnlaU2h0WlhSeWFXTnpXMmxrZUYwcExtZGxkRTFsWVhOMWNtVW9iM0IwYVc5dWN5NWthWE4wWVc1alpVWnVRWEpuYzF0cFpIaGRLVHRjYmlBZ0lDQWdJQ0FnYldWaGMzVnlaWE11Y0hWemFDaHRaV0Z6ZFhKbEtUdGNiaUFnSUNBZ0lDQWdiR1YwSUdKcGRFRnljbUY1VEdWdVozUm9JRDBnTWpBME9EdGNiaUFnSUNBZ0lDQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JrWVhSaFcybGtlRjB1YkdWdVozUm9PeUFySzJrcElIdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb1pHRjBZVnRwWkhoZFcybGRJQ1ltSUdSaGRHRmJhV1I0WFZ0cFhTNWZiR1Z1WjNSb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCaWFYUkJjbkpoZVV4bGJtZDBhQ0E5SUdSaGRHRmJhV1I0WFZ0cFhTNWZiR1Z1WjNSb08xeHVJQ0FnSUNBZ0lDQWdJQ0FnWW5KbFlXczdYRzRnSUNBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lHbG1JQ2hwYzBKcGRFRnljbUY1VFdWMGNtbGpLRzFsZEhKcFkzTmJhV1I0WFNrcElIdGNiaUFnSUNBZ0lDQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUdSaGRHRmJhV1I0WFM1c1pXNW5kR2c3SUNzcmFTa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR1JoZEdGYmFXUjRYVnRwWFNBbUppQmtZWFJoVzJsa2VGMWJhVjB1WDJSaGRHRXBYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHUmhkR0ZiYVdSNFhWdHBYU0E5SUc1bGR5QkNhWFJCY25KaGVTaGtZWFJoVzJsa2VGMWJhVjB1WDJSaGRHRXNJR1JoZEdGYmFXUjRYVnRwWFM1ZmJHVnVaM1JvS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJR1ZzYzJWY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnWkdGMFlWdHBaSGhkVzJsZElEMGdibVYzSUVKcGRFRnljbUY1S0dKcGRFRnljbUY1VEdWdVozUm9LVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdhV1lnS0cxbGRHaHZaQ0E5UFNBblZVMUJVQ2NwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV5WldSMVkyVnlJRDBnYm1WM0lGVk5RVkJTWldSMVkyVnlLSHRjYmlBZ0lDQWdJQ0FnSUNCa1lYUmhPaUJrWVhSaExGeHVJQ0FnSUNBZ0lDQWdJR1JwYzNSaGJtTmxSbTVoYldWek9pQnRaWFJ5YVdOekxGeHVJQ0FnSUNBZ0lDQWdJR1JwYzNSaGJtTmxSbTV6T2lCdFpXRnpkWEpsY3l4Y2JpQWdJQ0FnSUNBZ0lDQmthWE4wWVc1alpVWnVRWEpuY3pvZ2IzQjBhVzl1Y3k1a2FYTjBZVzVqWlVadVFYSm5jeXhjYmlBZ0lDQWdJQ0FnSUNCM1pXbG5hSFJ6T2lCM1pXbG5hSFJ6TEZ4dUlDQWdJQ0FnSUNBZ0lHRm5aM0psWjJGMGFXOXVUV1YwYUc5a09pQmthWE4wWVc1alpVRm5aM0psWjJGMGFXOXVMRnh1SUNBZ0lDQWdJQ0FnSUM0dUxtOXdkR2x2Ym5OY2JpQWdJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQjlJR1ZzYzJVZ2FXWWdLRzFsZEdodlpDQTlQU0FuZEMxVFRrVW5LU0I3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVjbVZrZFdObGNpQTlJRzVsZHlCVVUwNUZVbVZrZFdObGNpaDdYRzRnSUNBZ0lDQWdJQ0FnWkdGMFlUb2daR0YwWVN4Y2JpQWdJQ0FnSUNBZ0lDQmthWE4wWVc1alpVWnVZVzFsY3pvZ2JXVjBjbWxqY3l4Y2JpQWdJQ0FnSUNBZ0lDQmthWE4wWVc1alpVWnVjem9nYldWaGMzVnlaWE1zWEc0Z0lDQWdJQ0FnSUNBZ1pHbHpkR0Z1WTJWR2JrRnlaM002SUc5d2RHbHZibk11WkdsemRHRnVZMlZHYmtGeVozTXNYRzRnSUNBZ0lDQWdJQ0FnZDJWcFoyaDBjem9nZDJWcFoyaDBjeXhjYmlBZ0lDQWdJQ0FnSUNCaFoyZHlaV2RoZEdsdmJrMWxkR2h2WkRvZ1pHbHpkR0Z1WTJWQloyZHlaV2RoZEdsdmJpeGNiaUFnSUNBZ0lDQWdJQ0F1TGk1dmNIUnBiMjV6WEc0Z0lDQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUgxY2JseHVJQ0FnSUM4cUtseHVJQ0FnS2lCRmJXSmxaSE1nZEdobElHUmhkR0VnWjJsMlpXNGdhVzUwYnlCMGFHVWdkSGR2TFdScGJXVnVjMmx2Ym1Gc0lITndZV05sSUhWemFXNW5JSFJvWlNCamFHOXpaVzRnYldWMGFHOWtMbHh1SUNBZ0tseHVJQ0FnS2lCQWNHRnlZVzBnZTJKdmIyeGxZVzU5SUhSeVlXNXpjRzl6WlNCWGFHVjBhR1Z5SUhSdklIUnlZVzV6Wm05eWJTQmpiMjl5WkdsdVlYUmxjeUIwYnlCb1lYWmxJR052YkhWdGJuTXRabWx5YzNRZ2IzSnBaVzUwWVhScGIyNHVYRzRnSUNBcUlFQndZWEpoYlNCN1ltOXZiR1ZoYm4wZ2NHRnlZV3hzWld4RWFYTjBZVzVqWlZkdmNtdGxjbk1nVjJobGRHaGxjaUIwYnlCMWMyVWdjR0Z5WVd4c1pXd2daR2x6ZEdGdVkyVWdZMjl0Y0hWMFlYUnBiMjR1WEc0Z0lDQXFJRUIwYUhKdmQzTWdlMFZ5Y205eWZTQkpaaUIwYUdVZ1pXMWlaV1JrYVc1bklHMWxkR2h2WkNCM1lYTWdibTkwSUdadmRXNWtMbHh1SUNBZ0tpQkFjbVYwZFhKdUlIdGhibmw5SUVOaGNuUmxjMmxoYmlCamIyOXlaR2x1WVhSbElHOW1JSFJvYVhNZ1pXMWlaV1JrYVc1bklHRnVaQ0JrYVhOMFlXNWpaU0J0WVhSeWFYZ2dkMmhsY21VZ1lYQndiR2xqWVdKc1pTNWNiaUFnSUNvZ1FHMWxiV0psY205bUlFUnBiV1Z1YzJsdmJtRnNhWFI1VW1Wa2RXTmxjbHh1SUNBZ0tpOWNiaUFnSUNCd2RXSnNhV01nWVhONWJtTWdkSEpoYm5ObWIzSnRLSFJ5WVc1emNHOXpaVG9nWW05dmJHVmhiaUE5SUdaaGJITmxLVG9nVUhKdmJXbHpaVHhOWVhSeWFYZytJSHRjYmlBZ0lDQWdJR2xtSUNoMGFHbHpMbkpsWkhWalpYSWdQVDA5SUhWdVpHVm1hVzVsWkNsY2JpQWdJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0NkU1pXUjFZMlZ5SUhkaGN5QnViM1FnWkdWbWFXNWxaQzRuS1R0Y2JseHVJQ0FnSUNBZ2JHVjBJR1Z0WW1Wa1pHbHVaeUE5SUdGM1lXbDBJSFJvYVhNdWNtVmtkV05sY2k1MGNtRnVjMlp2Y20wb0tUdGNibHh1SUNBZ0lDQWdhV1lnS0hSeVlXNXpjRzl6WlNsY2JpQWdJQ0FnSUNBZ1pXMWlaV1JrYVc1bklEMGdkSEpoYm5Od2IzTmxUV0YwY21sNEtHVnRZbVZrWkdsdVp5azdYRzVjYmlBZ0lDQWdJSEpsZEhWeWJpQmxiV0psWkdScGJtYzdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ0x5b3FYRzRnSUNBcUlGSmxkSFZ5Ym5NZ2JXVjBjbWxqY3lCaGRtRnBiR0ZpYkdVZ1lua2dkSGx3WlM1Y2JpQWdJQ3BjYmlBZ0lDb2dRSEJoY21GdElIdEJkbUZwYkdGaWJHVkVZWFJoVkhsd1pYTjlJSFI1Y0dWT1lXMWxJSFI1Y0dVZ2JtRnRaVnh1SUNBZ0tpQkFjbVYwZFhKdUlIdHpkSEpwYm1kYlhYMGdUV1YwY21saklHNWhiV1Z6SUhkb2FXTm9JR1Y0Y0dWamRITWdkR2hsSUdkcGRtVnVJR1JoZEdFZ2RIbHdaVnh1SUNBZ0tpQkFiV1Z0WW1WeWIyWWdSR2x0Wlc1emFXOXVZV3hwZEhsU1pXUjFZMlZ5WEc0Z0lDQXFMMXh1SUNBZ0lITjBZWFJwWXlCaGRtRnBiR0ZpYkdWTlpYUnlhV056UW5sVWVYQmxLSFI1Y0dWT1lXMWxPaUJCZG1GcGJHRmliR1ZFWVhSaFZIbHdaWE1wSUh0Y2JpQWdJQ0FnSUhKbGRIVnliaUJQWW1wbFkzUXVhMlY1Y3loQmRtRnBiR0ZpYkdWTlpYUnlhV056VzNSNWNHVk9ZVzFsWFNrN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHlvcVhHNGdJQ0FxSUZKbGRIVnlibk1nWkdsdFpXNXphVzl1WVd4cGRIa2djbVZrZFdOMGFXOXVJRzFsZEdodlpITWdZWFpoYVd4aFlteGxMbHh1SUNBZ0tseHVJQ0FnS2lCQWNtVmhaRzl1YkhsY2JpQWdJQ29nUUcxbGJXSmxjbTltSUVScGJXVnVjMmx2Ym1Gc2FYUjVVbVZrZFdObGNseHVJQ0FnS2k5Y2JpQWdJQ0J6ZEdGMGFXTWdaMlYwSUdGMllXbHNZV0pzWlUxbGRHaHZaSE1vS1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnVDJKcVpXTjBMbXRsZVhNb1FYWmhhV3hoWW14bFVtVmtkV05sY25NcE8xeHVJQ0FnSUgxY2JseHVJQ0FnSUM4cUtseHVJQ0FnS2lCU1pYUjFjbTV6SUcxbGRISnBZM01nWVhaaGFXeGhZbXhsTGx4dUlDQWdLbHh1SUNBZ0tpQkFjbVZoWkc5dWJIbGNiaUFnSUNvZ1FHMWxiV0psY205bUlFUnBiV1Z1YzJsdmJtRnNhWFI1VW1Wa2RXTmxjbHh1SUNBZ0tpOWNiaUFnSUNCemRHRjBhV01nWjJWMElHRjJZV2xzWVdKc1pVMWxkSEpwWTNNb0tTQjdYRzRnSUNBZ0lDQnNaWFFnWVc1ek9pQnpkSEpwYm1kYlhTQTlJRnRkTzF4dUlDQWdJQ0FnVDJKcVpXTjBMblpoYkhWbGN5aEJkbUZwYkdGaWJHVk5aWFJ5YVdOektTNW1iM0pGWVdOb0tDaHZZbW9wSUQwK0lIdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ1lYSnlZWGtnUFNCUFltcGxZM1F1ZG1Gc2RXVnpLRzlpYWlrN1hHNGdJQ0FnSUNBZ0lHRnVjeUE5SUZzdUxpNWhibk1zSUM0dUxtRnljbUY1WFR0Y2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1SUdGdWN6dGNiaUFnSUNCOVhHNTlYRzRpWFgwPSIsImltcG9ydCB7IE11bHRpQ29sRGltUmVkdWNlciB9IGZyb20gJy4vbXVsdGktY29sdW1uLWRpbS1yZWR1Y2VyJztcbi8qKlxuICogV29ya2VyIHRocmVhZCByZWNlaXZpbmcgZGF0YSBmdW5jdGlvbi5cbiAqXG4gKiBAcGFyYW0ge2FueVtdfSBjb2x1bW5EYXRhIFNhbXBsZXMgdG8gcHJvY2Vzcy5cbiAqIEBwYXJhbSB7S25vd25NZXRob2RzfSBtZXRob2QgRW1iZWRkaW5nIG1ldGhvZC5cbiAqIEBwYXJhbSB7S25vd25NZXRyaWNzfSBtZWFzdXJlIERpc3RhbmNlIG1ldHJpYy5cbiAqIEBwYXJhbSB7YW55fSBvcHRpb25zIE9wdGlvbnMgdG8gcGFzcyB0byBhbGdvcml0aG0uXG4gKiBAcGFyYW0ge2Jvb2xlYW59IHBhcmFsbGVsRGlzdGFuY2VXb3JrZXJzIFdoZXRoZXIgdG8gdXNlIHBhcmFsbGVsIGRpc3RhbmNlIHdvcmtlcnMuXG4gKiBAcmV0dXJuIHthbnl9IEVtYmVkZGluZyAoYW5kIGRpc3RhbmNlIG1hdHJpeCB3aGVyZSBhcHBsaWNhYmxlKS5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gb25NZXNzYWdlKGNvbHVtbnNEYXRhLCBtZXRob2QsIG1ldHJpY3MsIHdlaWdodHMsIGFnZ3JlZ2F0aW9uTWV0aG9kLCBvcHRpb25zKSB7XG4gICAgY29uc3QgcmVkdWNlciA9IG5ldyBNdWx0aUNvbERpbVJlZHVjZXIoY29sdW1uc0RhdGEsIG1ldGhvZCwgbWV0cmljcywgd2VpZ2h0cywgYWdncmVnYXRpb25NZXRob2QsIHsgLi4ub3B0aW9ucywgcHJvZ3Jlc3NGdW5jIH0pO1xuICAgIHJldHVybiBhd2FpdCByZWR1Y2VyLnRyYW5zZm9ybSh0cnVlKTtcbn1cbmFzeW5jIGZ1bmN0aW9uIHByb2dyZXNzRnVuYyhlcG9jaE51bSwgZXBvY2hzTGVuZ3RoLCBlbWJlZGRpbmcpIHtcbiAgICBpZiAoZXBvY2hOdW0gJSA1ID09PSAwKVxuICAgICAgICBzZWxmLnBvc3RNZXNzYWdlKHsgZXBvY2hOdW0sIGVwb2Noc0xlbmd0aCwgZW1iZWRkaW5nIH0pO1xufVxuc2VsZi5vbm1lc3NhZ2UgPSBhc3luYyAoeyBkYXRhOiB7IGNvbHVtbnNEYXRhLCBtZXRob2QsIGRpc3RhbmNlTWV0cmljcywgb3B0aW9ucywgd2VpZ2h0cywgYWdncmVnYXRpb25NZXRob2QgfSB9KSA9PiB7XG4gICAgbGV0IGRhdGE7XG4gICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZW1iZWRkaW5nID0gYXdhaXQgb25NZXNzYWdlKGNvbHVtbnNEYXRhLCBtZXRob2QsIGRpc3RhbmNlTWV0cmljcywgd2VpZ2h0cywgYWdncmVnYXRpb25NZXRob2QsIG9wdGlvbnMpO1xuICAgICAgICBkYXRhID0geyBlbWJlZGRpbmcgfTtcbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgZGF0YSA9IHsgZXJyb3I6IGUgfTtcbiAgICB9XG4gICAgc2VsZi5wb3N0TWVzc2FnZSh7XG4gICAgICAgIGVycm9yOiBkYXRhLmVycm9yLFxuICAgICAgICBlbWJlZGRpbmc6IGRhdGEuZW1iZWRkaW5nLFxuICAgIH0pO1xufTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWJYVnNhWFF0WTI5c2RXMXVMV1JwYlMxeVpXUjFZMlZ5TFhkdmNtdGxjaTVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYkltMTFiR2wwTFdOdmJIVnRiaTFrYVcwdGNtVmtkV05sY2kxM2IzSnJaWEl1ZEhNaVhTd2libUZ0WlhNaU9sdGRMQ0p0WVhCd2FXNW5jeUk2SWtGQlNVRXNUMEZCVHl4RlFVRkRMR3RDUVVGclFpeEZRVUZETEUxQlFVMHNORUpCUVRSQ0xFTkJRVU03UVVGRk9VUTdPenM3T3pzN096dEhRVk5ITzBGQlEwZ3NTMEZCU3l4VlFVRlZMRk5CUVZNc1EwRkJReXhYUVVGNVFpeEZRVUZGTEUxQlFUSkNMRVZCUVVVc1QwRkJkVUlzUlVGRGRFY3NUMEZCYVVJc1JVRkJSU3hwUWtGQk5FTXNSVUZETDBRc1QwRkJXVHRKUVVOYUxFMUJRVTBzVDBGQlR5eEhRVUZITEVsQlFVa3NhMEpCUVd0Q0xFTkJRM0JETEZkQlFWY3NSVUZEV0N4TlFVRk5MRVZCUTA0c1QwRkJUeXhGUVVOUUxFOUJRVThzUlVGRFVDeHBRa0ZCYVVJc1JVRkRha0lzUlVGQlF5eEhRVUZITEU5QlFVOHNSVUZCUlN4WlFVRlpMRVZCUVVNc1EwRkRNMElzUTBGQlF6dEpRVU5HTEU5QlFVOHNUVUZCVFN4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEzWkRMRU5CUVVNN1FVRkZSQ3hMUVVGTExGVkJRVlVzV1VGQldTeERRVUZETEZGQlFXZENMRVZCUVVVc1dVRkJiMElzUlVGQlJTeFRRVUZ4UWp0SlFVTjJSaXhKUVVGSkxGRkJRVkVzUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZCUXp0UlFVTndRaXhKUVVGSkxFTkJRVU1zVjBGQlZ5eERRVUZETEVWQlFVTXNVVUZCVVN4RlFVRkZMRmxCUVZrc1JVRkJSU3hUUVVGVExFVkJRVU1zUTBGQlF5eERRVUZETzBGQlF6RkVMRU5CUVVNN1FVRkZSQ3hKUVVGSkxFTkJRVU1zVTBGQlV5eEhRVUZITEV0QlFVc3NSVUZCUlN4RlFVRkRMRWxCUVVrc1JVRkJSU3hGUVVGRExGZEJRVmNzUlVGQlJTeE5RVUZOTEVWQlFVVXNaVUZCWlN4RlFVRkZMRTlCUVU4c1JVRkJSU3hQUVVGUExFVkJRVVVzYVVKQlFXbENMRVZCUVVNc1JVRkJReXhGUVVGRkxFVkJRVVU3U1VGRE4wY3NTVUZCU1N4SlFVRnZReXhEUVVGRE8wbEJRM3BETEVsQlFVazdVVUZEUml4TlFVRk5MRk5CUVZNc1IwRkJSeXhOUVVGTkxGTkJRVk1zUTBGQlF5eFhRVUZYTEVWQlFVVXNUVUZCVFN4RlFVRkZMR1ZCUVdVc1JVRkJSU3hQUVVGUExFVkJRVVVzYVVKQlFXbENMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU03VVVGRE4wY3NTVUZCU1N4SFFVRkhMRVZCUVVNc1UwRkJVeXhGUVVGRExFTkJRVU03UzBGRGNFSTdTVUZCUXl4UFFVRlBMRU5CUVUwc1JVRkJSVHRSUVVObUxFbEJRVWtzUjBGQlJ5eEZRVUZETEV0QlFVc3NSVUZCUlN4RFFVRkRMRVZCUVVNc1EwRkJRenRMUVVOdVFqdEpRVU5FTEVsQlFVa3NRMEZCUXl4WFFVRlhMRU5CUVVNN1VVRkRaaXhMUVVGTExFVkJRVVVzU1VGQlNTeERRVUZETEV0QlFVczdVVUZEYWtJc1UwRkJVeXhGUVVGRkxFbEJRVWtzUTBGQlF5eFRRVUZUTzB0QlF6RkNMRU5CUVVNc1EwRkJRenRCUVVOTUxFTkJRVU1zUTBGQlF5SXNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJbWx0Y0c5eWRDQjdUV0YwY21sNGZTQm1jbTl0SUNkQVpHRjBZV2R5YjJzdGJHbGljbUZ5YVdWekwzVjBhV3h6TDNOeVl5OTBlWEJsTFdSbFkyeGhjbUYwYVc5dWN5YzdYRzVwYlhCdmNuUWdlMHR1YjNkdVRXVjBjbWxqYzMwZ1puSnZiU0FuTGk0dmRIbHdaV1F0YldWMGNtbGpjeTkwZVhCbFpDMXRaWFJ5YVdOekp6dGNibWx0Y0c5eWRDQjdSR2x0VW1Wa2RXTjBhVzl1VFdWMGFHOWtjMzBnWm5KdmJTQW5MaTkwZVhCbGN5YzdYRzVwYlhCdmNuUWdlMFJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUjlJR1p5YjIwZ0p5NHVMMlJwYzNSaGJtTmxMVzFoZEhKcGVDOTBlWEJsY3ljN1hHNXBiWEJ2Y25RZ2UwMTFiSFJwUTI5c1JHbHRVbVZrZFdObGNuMGdabkp2YlNBbkxpOXRkV3gwYVMxamIyeDFiVzR0WkdsdExYSmxaSFZqWlhJbk8xeHVYRzR2S2lwY2JpQXFJRmR2Y210bGNpQjBhSEpsWVdRZ2NtVmpaV2wyYVc1bklHUmhkR0VnWm5WdVkzUnBiMjR1WEc0Z0tseHVJQ29nUUhCaGNtRnRJSHRoYm5sYlhYMGdZMjlzZFcxdVJHRjBZU0JUWVcxd2JHVnpJSFJ2SUhCeWIyTmxjM011WEc0Z0tpQkFjR0Z5WVcwZ2UwdHViM2R1VFdWMGFHOWtjMzBnYldWMGFHOWtJRVZ0WW1Wa1pHbHVaeUJ0WlhSb2IyUXVYRzRnS2lCQWNHRnlZVzBnZTB0dWIzZHVUV1YwY21samMzMGdiV1ZoYzNWeVpTQkVhWE4wWVc1alpTQnRaWFJ5YVdNdVhHNGdLaUJBY0dGeVlXMGdlMkZ1ZVgwZ2IzQjBhVzl1Y3lCUGNIUnBiMjV6SUhSdklIQmhjM01nZEc4Z1lXeG5iM0pwZEdodExseHVJQ29nUUhCaGNtRnRJSHRpYjI5c1pXRnVmU0J3WVhKaGJHeGxiRVJwYzNSaGJtTmxWMjl5YTJWeWN5QlhhR1YwYUdWeUlIUnZJSFZ6WlNCd1lYSmhiR3hsYkNCa2FYTjBZVzVqWlNCM2IzSnJaWEp6TGx4dUlDb2dRSEpsZEhWeWJpQjdZVzU1ZlNCRmJXSmxaR1JwYm1jZ0tHRnVaQ0JrYVhOMFlXNWpaU0J0WVhSeWFYZ2dkMmhsY21VZ1lYQndiR2xqWVdKc1pTa3VYRzRnS2k5Y2JtRnplVzVqSUdaMWJtTjBhVzl1SUc5dVRXVnpjMkZuWlNoamIyeDFiVzV6UkdGMFlUb2dRWEp5WVhrOFlXNTVXMTArTENCdFpYUm9iMlE2SUVScGJWSmxaSFZqZEdsdmJrMWxkR2h2WkhNc0lHMWxkSEpwWTNNNklFdHViM2R1VFdWMGNtbGpjMXRkTEZ4dUlDQjNaV2xuYUhSek9pQnVkVzFpWlhKYlhTd2dZV2RuY21WbllYUnBiMjVOWlhSb2IyUTZJRVJwYzNSaGJtTmxRV2RuY21WbllYUnBiMjVOWlhSb2IyUXNYRzRnSUc5d2RHbHZibk02SUdGdWVTazZJRkJ5YjIxcGMyVThUV0YwY21sNFBpQjdYRzRnSUdOdmJuTjBJSEpsWkhWalpYSWdQU0J1WlhjZ1RYVnNkR2xEYjJ4RWFXMVNaV1IxWTJWeUtGeHVJQ0FnSUdOdmJIVnRibk5FWVhSaExGeHVJQ0FnSUcxbGRHaHZaQ3hjYmlBZ0lDQnRaWFJ5YVdOekxGeHVJQ0FnSUhkbGFXZG9kSE1zWEc0Z0lDQWdZV2RuY21WbllYUnBiMjVOWlhSb2IyUXNYRzRnSUNBZ2V5NHVMbTl3ZEdsdmJuTXNJSEJ5YjJkeVpYTnpSblZ1WTMxY2JpQWdLVHRjYmlBZ2NtVjBkWEp1SUdGM1lXbDBJSEpsWkhWalpYSXVkSEpoYm5ObWIzSnRLSFJ5ZFdVcE8xeHVmVnh1WEc1aGMzbHVZeUJtZFc1amRHbHZiaUJ3Y205bmNtVnpjMFoxYm1Nb1pYQnZZMmhPZFcwNklHNTFiV0psY2l3Z1pYQnZZMmh6VEdWdVozUm9PaUJ1ZFcxaVpYSXNJR1Z0WW1Wa1pHbHVaem9nYm5WdFltVnlXMTFiWFNrZ2UxeHVJQ0JwWmlBb1pYQnZZMmhPZFcwZ0pTQTFJRDA5UFNBd0tWeHVJQ0FnSUhObGJHWXVjRzl6ZEUxbGMzTmhaMlVvZTJWd2IyTm9UblZ0TENCbGNHOWphSE5NWlc1bmRHZ3NJR1Z0WW1Wa1pHbHVaMzBwTzF4dWZWeHVYRzV6Wld4bUxtOXViV1Z6YzJGblpTQTlJR0Z6ZVc1aklDaDdaR0YwWVRvZ2UyTnZiSFZ0Ym5ORVlYUmhMQ0J0WlhSb2IyUXNJR1JwYzNSaGJtTmxUV1YwY21samN5d2diM0IwYVc5dWN5d2dkMlZwWjJoMGN5d2dZV2RuY21WbllYUnBiMjVOWlhSb2IyUjlmU2tnUFQ0Z2UxeHVJQ0JzWlhRZ1pHRjBZVG9nZTJWeWNtOXlQem9nWVc1NUxDQmxiV0psWkdScGJtYy9PaUJoYm5sOU8xeHVJQ0IwY25rZ2UxeHVJQ0FnSUdOdmJuTjBJR1Z0WW1Wa1pHbHVaeUE5SUdGM1lXbDBJRzl1VFdWemMyRm5aU2hqYjJ4MWJXNXpSR0YwWVN3Z2JXVjBhRzlrTENCa2FYTjBZVzVqWlUxbGRISnBZM01zSUhkbGFXZG9kSE1zSUdGblozSmxaMkYwYVc5dVRXVjBhRzlrTENCdmNIUnBiMjV6S1R0Y2JpQWdJQ0JrWVhSaElEMGdlMlZ0WW1Wa1pHbHVaMzA3WEc0Z0lIMGdZMkYwWTJnZ0tHVTZJR0Z1ZVNrZ2UxeHVJQ0FnSUdSaGRHRWdQU0I3WlhKeWIzSTZJR1Y5TzF4dUlDQjlYRzRnSUhObGJHWXVjRzl6ZEUxbGMzTmhaMlVvZTF4dUlDQWdJR1Z5Y205eU9pQmtZWFJoTG1WeWNtOXlMRnh1SUNBZ0lHVnRZbVZrWkdsdVp6b2daR0YwWVM1bGJXSmxaR1JwYm1jc1hHNGdJSDBwTzF4dWZUdGNiaUpkZlE9PSIsIi8vIEEgbGlicmFyeSBvZiBzZWVkYWJsZSBSTkdzIGltcGxlbWVudGVkIGluIEphdmFzY3JpcHQuXG4vL1xuLy8gVXNhZ2U6XG4vL1xuLy8gdmFyIHNlZWRyYW5kb20gPSByZXF1aXJlKCdzZWVkcmFuZG9tJyk7XG4vLyB2YXIgcmFuZG9tID0gc2VlZHJhbmRvbSgxKTsgLy8gb3IgYW55IHNlZWQuXG4vLyB2YXIgeCA9IHJhbmRvbSgpOyAgICAgICAvLyAwIDw9IHggPCAxLiAgRXZlcnkgYml0IGlzIHJhbmRvbS5cbi8vIHZhciB4ID0gcmFuZG9tLnF1aWNrKCk7IC8vIDAgPD0geCA8IDEuICAzMiBiaXRzIG9mIHJhbmRvbW5lc3MuXG5cbi8vIGFsZWEsIGEgNTMtYml0IG11bHRpcGx5LXdpdGgtY2FycnkgZ2VuZXJhdG9yIGJ5IEpvaGFubmVzIEJhYWfDuGUuXG4vLyBQZXJpb2Q6IH4yXjExNlxuLy8gUmVwb3J0ZWQgdG8gcGFzcyBhbGwgQmlnQ3J1c2ggdGVzdHMuXG52YXIgYWxlYSA9IHJlcXVpcmUoJy4vbGliL2FsZWEnKTtcblxuLy8geG9yMTI4LCBhIHB1cmUgeG9yLXNoaWZ0IGdlbmVyYXRvciBieSBHZW9yZ2UgTWFyc2FnbGlhLlxuLy8gUGVyaW9kOiAyXjEyOC0xLlxuLy8gUmVwb3J0ZWQgdG8gZmFpbDogTWF0cml4UmFuayBhbmQgTGluZWFyQ29tcC5cbnZhciB4b3IxMjggPSByZXF1aXJlKCcuL2xpYi94b3IxMjgnKTtcblxuLy8geG9yd293LCBHZW9yZ2UgTWFyc2FnbGlhJ3MgMTYwLWJpdCB4b3Itc2hpZnQgY29tYmluZWQgcGx1cyB3ZXlsLlxuLy8gUGVyaW9kOiAyXjE5Mi0yXjMyXG4vLyBSZXBvcnRlZCB0byBmYWlsOiBDb2xsaXNpb25PdmVyLCBTaW1wUG9rZXIsIGFuZCBMaW5lYXJDb21wLlxudmFyIHhvcndvdyA9IHJlcXVpcmUoJy4vbGliL3hvcndvdycpO1xuXG4vLyB4b3JzaGlmdDcsIGJ5IEZyYW7Dp29pcyBQYW5uZXRvbiBhbmQgUGllcnJlIEwnZWN1eWVyLCB0YWtlc1xuLy8gYSBkaWZmZXJlbnQgYXBwcm9hY2g6IGl0IGFkZHMgcm9idXN0bmVzcyBieSBhbGxvd2luZyBtb3JlIHNoaWZ0c1xuLy8gdGhhbiBNYXJzYWdsaWEncyBvcmlnaW5hbCB0aHJlZS4gIEl0IGlzIGEgNy1zaGlmdCBnZW5lcmF0b3Jcbi8vIHdpdGggMjU2IGJpdHMsIHRoYXQgcGFzc2VzIEJpZ0NydXNoIHdpdGggbm8gc3lzdG1hdGljIGZhaWx1cmVzLlxuLy8gUGVyaW9kIDJeMjU2LTEuXG4vLyBObyBzeXN0ZW1hdGljIEJpZ0NydXNoIGZhaWx1cmVzIHJlcG9ydGVkLlxudmFyIHhvcnNoaWZ0NyA9IHJlcXVpcmUoJy4vbGliL3hvcnNoaWZ0NycpO1xuXG4vLyB4b3I0MDk2LCBieSBSaWNoYXJkIEJyZW50LCBpcyBhIDQwOTYtYml0IHhvci1zaGlmdCB3aXRoIGFcbi8vIHZlcnkgbG9uZyBwZXJpb2QgdGhhdCBhbHNvIGFkZHMgYSBXZXlsIGdlbmVyYXRvci4gSXQgYWxzbyBwYXNzZXNcbi8vIEJpZ0NydXNoIHdpdGggbm8gc3lzdGVtYXRpYyBmYWlsdXJlcy4gIEl0cyBsb25nIHBlcmlvZCBtYXlcbi8vIGJlIHVzZWZ1bCBpZiB5b3UgaGF2ZSBtYW55IGdlbmVyYXRvcnMgYW5kIG5lZWQgdG8gYXZvaWRcbi8vIGNvbGxpc2lvbnMuXG4vLyBQZXJpb2Q6IDJeNDEyOC0yXjMyLlxuLy8gTm8gc3lzdGVtYXRpYyBCaWdDcnVzaCBmYWlsdXJlcyByZXBvcnRlZC5cbnZhciB4b3I0MDk2ID0gcmVxdWlyZSgnLi9saWIveG9yNDA5NicpO1xuXG4vLyBUeWNoZS1pLCBieSBTYW11ZWwgTmV2ZXMgYW5kIEZpbGlwZSBBcmF1am8sIGlzIGEgYml0LXNoaWZ0aW5nIHJhbmRvbVxuLy8gbnVtYmVyIGdlbmVyYXRvciBkZXJpdmVkIGZyb20gQ2hhQ2hhLCBhIG1vZGVybiBzdHJlYW0gY2lwaGVyLlxuLy8gaHR0cHM6Ly9lZGVuLmRlaS51Yy5wdC9+c25ldmVzL3B1YnMvMjAxMS1zbmZhMi5wZGZcbi8vIFBlcmlvZDogfjJeMTI3XG4vLyBObyBzeXN0ZW1hdGljIEJpZ0NydXNoIGZhaWx1cmVzIHJlcG9ydGVkLlxudmFyIHR5Y2hlaSA9IHJlcXVpcmUoJy4vbGliL3R5Y2hlaScpO1xuXG4vLyBUaGUgb3JpZ2luYWwgQVJDNC1iYXNlZCBwcm5nIGluY2x1ZGVkIGluIHRoaXMgbGlicmFyeS5cbi8vIFBlcmlvZDogfjJeMTYwMFxudmFyIHNyID0gcmVxdWlyZSgnLi9zZWVkcmFuZG9tJyk7XG5cbnNyLmFsZWEgPSBhbGVhO1xuc3IueG9yMTI4ID0geG9yMTI4O1xuc3IueG9yd293ID0geG9yd293O1xuc3IueG9yc2hpZnQ3ID0geG9yc2hpZnQ3O1xuc3IueG9yNDA5NiA9IHhvcjQwOTY7XG5zci50eWNoZWkgPSB0eWNoZWk7XG5cbm1vZHVsZS5leHBvcnRzID0gc3I7XG4iLCIvLyBBIHBvcnQgb2YgYW4gYWxnb3JpdGhtIGJ5IEpvaGFubmVzIEJhYWfDuGUgPGJhYWdvZUBiYWFnb2UuY29tPiwgMjAxMFxuLy8gaHR0cDovL2JhYWdvZS5jb20vZW4vUmFuZG9tTXVzaW5ncy9qYXZhc2NyaXB0L1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL25xdWlubGFuL2JldHRlci1yYW5kb20tbnVtYmVycy1mb3ItamF2YXNjcmlwdC1taXJyb3Jcbi8vIE9yaWdpbmFsIHdvcmsgaXMgdW5kZXIgTUlUIGxpY2Vuc2UgLVxuXG4vLyBDb3B5cmlnaHQgKEMpIDIwMTAgYnkgSm9oYW5uZXMgQmFhZ8O4ZSA8YmFhZ29lQGJhYWdvZS5vcmc+XG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuXG5cbihmdW5jdGlvbihnbG9iYWwsIG1vZHVsZSwgZGVmaW5lKSB7XG5cbmZ1bmN0aW9uIEFsZWEoc2VlZCkge1xuICB2YXIgbWUgPSB0aGlzLCBtYXNoID0gTWFzaCgpO1xuXG4gIG1lLm5leHQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgdCA9IDIwOTE2MzkgKiBtZS5zMCArIG1lLmMgKiAyLjMyODMwNjQzNjUzODY5NjNlLTEwOyAvLyAyXi0zMlxuICAgIG1lLnMwID0gbWUuczE7XG4gICAgbWUuczEgPSBtZS5zMjtcbiAgICByZXR1cm4gbWUuczIgPSB0IC0gKG1lLmMgPSB0IHwgMCk7XG4gIH07XG5cbiAgLy8gQXBwbHkgdGhlIHNlZWRpbmcgYWxnb3JpdGhtIGZyb20gQmFhZ29lLlxuICBtZS5jID0gMTtcbiAgbWUuczAgPSBtYXNoKCcgJyk7XG4gIG1lLnMxID0gbWFzaCgnICcpO1xuICBtZS5zMiA9IG1hc2goJyAnKTtcbiAgbWUuczAgLT0gbWFzaChzZWVkKTtcbiAgaWYgKG1lLnMwIDwgMCkgeyBtZS5zMCArPSAxOyB9XG4gIG1lLnMxIC09IG1hc2goc2VlZCk7XG4gIGlmIChtZS5zMSA8IDApIHsgbWUuczEgKz0gMTsgfVxuICBtZS5zMiAtPSBtYXNoKHNlZWQpO1xuICBpZiAobWUuczIgPCAwKSB7IG1lLnMyICs9IDE7IH1cbiAgbWFzaCA9IG51bGw7XG59XG5cbmZ1bmN0aW9uIGNvcHkoZiwgdCkge1xuICB0LmMgPSBmLmM7XG4gIHQuczAgPSBmLnMwO1xuICB0LnMxID0gZi5zMTtcbiAgdC5zMiA9IGYuczI7XG4gIHJldHVybiB0O1xufVxuXG5mdW5jdGlvbiBpbXBsKHNlZWQsIG9wdHMpIHtcbiAgdmFyIHhnID0gbmV3IEFsZWEoc2VlZCksXG4gICAgICBzdGF0ZSA9IG9wdHMgJiYgb3B0cy5zdGF0ZSxcbiAgICAgIHBybmcgPSB4Zy5uZXh0O1xuICBwcm5nLmludDMyID0gZnVuY3Rpb24oKSB7IHJldHVybiAoeGcubmV4dCgpICogMHgxMDAwMDAwMDApIHwgMDsgfVxuICBwcm5nLmRvdWJsZSA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiBwcm5nKCkgKyAocHJuZygpICogMHgyMDAwMDAgfCAwKSAqIDEuMTEwMjIzMDI0NjI1MTU2NWUtMTY7IC8vIDJeLTUzXG4gIH07XG4gIHBybmcucXVpY2sgPSBwcm5nO1xuICBpZiAoc3RhdGUpIHtcbiAgICBpZiAodHlwZW9mKHN0YXRlKSA9PSAnb2JqZWN0JykgY29weShzdGF0ZSwgeGcpO1xuICAgIHBybmcuc3RhdGUgPSBmdW5jdGlvbigpIHsgcmV0dXJuIGNvcHkoeGcsIHt9KTsgfVxuICB9XG4gIHJldHVybiBwcm5nO1xufVxuXG5mdW5jdGlvbiBNYXNoKCkge1xuICB2YXIgbiA9IDB4ZWZjODI0OWQ7XG5cbiAgdmFyIG1hc2ggPSBmdW5jdGlvbihkYXRhKSB7XG4gICAgZGF0YSA9IFN0cmluZyhkYXRhKTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGRhdGEubGVuZ3RoOyBpKyspIHtcbiAgICAgIG4gKz0gZGF0YS5jaGFyQ29kZUF0KGkpO1xuICAgICAgdmFyIGggPSAwLjAyNTE5NjAzMjgyNDE2OTM4ICogbjtcbiAgICAgIG4gPSBoID4+PiAwO1xuICAgICAgaCAtPSBuO1xuICAgICAgaCAqPSBuO1xuICAgICAgbiA9IGggPj4+IDA7XG4gICAgICBoIC09IG47XG4gICAgICBuICs9IGggKiAweDEwMDAwMDAwMDsgLy8gMl4zMlxuICAgIH1cbiAgICByZXR1cm4gKG4gPj4+IDApICogMi4zMjgzMDY0MzY1Mzg2OTYzZS0xMDsgLy8gMl4tMzJcbiAgfTtcblxuICByZXR1cm4gbWFzaDtcbn1cblxuXG5pZiAobW9kdWxlICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gaW1wbDtcbn0gZWxzZSBpZiAoZGVmaW5lICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKGZ1bmN0aW9uKCkgeyByZXR1cm4gaW1wbDsgfSk7XG59IGVsc2Uge1xuICB0aGlzLmFsZWEgPSBpbXBsO1xufVxuXG59KShcbiAgdGhpcyxcbiAgKHR5cGVvZiBtb2R1bGUpID09ICdvYmplY3QnICYmIG1vZHVsZSwgICAgLy8gcHJlc2VudCBpbiBub2RlLmpzXG4gICh0eXBlb2YgZGVmaW5lKSA9PSAnZnVuY3Rpb24nICYmIGRlZmluZSAgIC8vIHByZXNlbnQgd2l0aCBhbiBBTUQgbG9hZGVyXG4pO1xuXG5cbiIsIi8vIEEgSmF2YXNjcmlwdCBpbXBsZW1lbnRhaW9uIG9mIHRoZSBcIlR5Y2hlLWlcIiBwcm5nIGFsZ29yaXRobSBieVxuLy8gU2FtdWVsIE5ldmVzIGFuZCBGaWxpcGUgQXJhdWpvLlxuLy8gU2VlIGh0dHBzOi8vZWRlbi5kZWkudWMucHQvfnNuZXZlcy9wdWJzLzIwMTEtc25mYTIucGRmXG5cbihmdW5jdGlvbihnbG9iYWwsIG1vZHVsZSwgZGVmaW5lKSB7XG5cbmZ1bmN0aW9uIFhvckdlbihzZWVkKSB7XG4gIHZhciBtZSA9IHRoaXMsIHN0cnNlZWQgPSAnJztcblxuICAvLyBTZXQgdXAgZ2VuZXJhdG9yIGZ1bmN0aW9uLlxuICBtZS5uZXh0ID0gZnVuY3Rpb24oKSB7XG4gICAgdmFyIGIgPSBtZS5iLCBjID0gbWUuYywgZCA9IG1lLmQsIGEgPSBtZS5hO1xuICAgIGIgPSAoYiA8PCAyNSkgXiAoYiA+Pj4gNykgXiBjO1xuICAgIGMgPSAoYyAtIGQpIHwgMDtcbiAgICBkID0gKGQgPDwgMjQpIF4gKGQgPj4+IDgpIF4gYTtcbiAgICBhID0gKGEgLSBiKSB8IDA7XG4gICAgbWUuYiA9IGIgPSAoYiA8PCAyMCkgXiAoYiA+Pj4gMTIpIF4gYztcbiAgICBtZS5jID0gYyA9IChjIC0gZCkgfCAwO1xuICAgIG1lLmQgPSAoZCA8PCAxNikgXiAoYyA+Pj4gMTYpIF4gYTtcbiAgICByZXR1cm4gbWUuYSA9IChhIC0gYikgfCAwO1xuICB9O1xuXG4gIC8qIFRoZSBmb2xsb3dpbmcgaXMgbm9uLWludmVydGVkIHR5Y2hlLCB3aGljaCBoYXMgYmV0dGVyIGludGVybmFsXG4gICAqIGJpdCBkaWZmdXNpb24sIGJ1dCB3aGljaCBpcyBhYm91dCAyNSUgc2xvd2VyIHRoYW4gdHljaGUtaSBpbiBKUy5cbiAgbWUubmV4dCA9IGZ1bmN0aW9uKCkge1xuICAgIHZhciBhID0gbWUuYSwgYiA9IG1lLmIsIGMgPSBtZS5jLCBkID0gbWUuZDtcbiAgICBhID0gKG1lLmEgKyBtZS5iIHwgMCkgPj4+IDA7XG4gICAgZCA9IG1lLmQgXiBhOyBkID0gZCA8PCAxNiBeIGQgPj4+IDE2O1xuICAgIGMgPSBtZS5jICsgZCB8IDA7XG4gICAgYiA9IG1lLmIgXiBjOyBiID0gYiA8PCAxMiBeIGQgPj4+IDIwO1xuICAgIG1lLmEgPSBhID0gYSArIGIgfCAwO1xuICAgIGQgPSBkIF4gYTsgbWUuZCA9IGQgPSBkIDw8IDggXiBkID4+PiAyNDtcbiAgICBtZS5jID0gYyA9IGMgKyBkIHwgMDtcbiAgICBiID0gYiBeIGM7XG4gICAgcmV0dXJuIG1lLmIgPSAoYiA8PCA3IF4gYiA+Pj4gMjUpO1xuICB9XG4gICovXG5cbiAgbWUuYSA9IDA7XG4gIG1lLmIgPSAwO1xuICBtZS5jID0gMjY1NDQzNTc2OSB8IDA7XG4gIG1lLmQgPSAxMzY3MTMwNTUxO1xuXG4gIGlmIChzZWVkID09PSBNYXRoLmZsb29yKHNlZWQpKSB7XG4gICAgLy8gSW50ZWdlciBzZWVkLlxuICAgIG1lLmEgPSAoc2VlZCAvIDB4MTAwMDAwMDAwKSB8IDA7XG4gICAgbWUuYiA9IHNlZWQgfCAwO1xuICB9IGVsc2Uge1xuICAgIC8vIFN0cmluZyBzZWVkLlxuICAgIHN0cnNlZWQgKz0gc2VlZDtcbiAgfVxuXG4gIC8vIE1peCBpbiBzdHJpbmcgc2VlZCwgdGhlbiBkaXNjYXJkIGFuIGluaXRpYWwgYmF0Y2ggb2YgNjQgdmFsdWVzLlxuICBmb3IgKHZhciBrID0gMDsgayA8IHN0cnNlZWQubGVuZ3RoICsgMjA7IGsrKykge1xuICAgIG1lLmIgXj0gc3Ryc2VlZC5jaGFyQ29kZUF0KGspIHwgMDtcbiAgICBtZS5uZXh0KCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gY29weShmLCB0KSB7XG4gIHQuYSA9IGYuYTtcbiAgdC5iID0gZi5iO1xuICB0LmMgPSBmLmM7XG4gIHQuZCA9IGYuZDtcbiAgcmV0dXJuIHQ7XG59O1xuXG5mdW5jdGlvbiBpbXBsKHNlZWQsIG9wdHMpIHtcbiAgdmFyIHhnID0gbmV3IFhvckdlbihzZWVkKSxcbiAgICAgIHN0YXRlID0gb3B0cyAmJiBvcHRzLnN0YXRlLFxuICAgICAgcHJuZyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMDsgfTtcbiAgcHJuZy5kb3VibGUgPSBmdW5jdGlvbigpIHtcbiAgICBkbyB7XG4gICAgICB2YXIgdG9wID0geGcubmV4dCgpID4+PiAxMSxcbiAgICAgICAgICBib3QgPSAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwLFxuICAgICAgICAgIHJlc3VsdCA9ICh0b3AgKyBib3QpIC8gKDEgPDwgMjEpO1xuICAgIH0gd2hpbGUgKHJlc3VsdCA9PT0gMCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbiAgcHJuZy5pbnQzMiA9IHhnLm5leHQ7XG4gIHBybmcucXVpY2sgPSBwcm5nO1xuICBpZiAoc3RhdGUpIHtcbiAgICBpZiAodHlwZW9mKHN0YXRlKSA9PSAnb2JqZWN0JykgY29weShzdGF0ZSwgeGcpO1xuICAgIHBybmcuc3RhdGUgPSBmdW5jdGlvbigpIHsgcmV0dXJuIGNvcHkoeGcsIHt9KTsgfVxuICB9XG4gIHJldHVybiBwcm5nO1xufVxuXG5pZiAobW9kdWxlICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gaW1wbDtcbn0gZWxzZSBpZiAoZGVmaW5lICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKGZ1bmN0aW9uKCkgeyByZXR1cm4gaW1wbDsgfSk7XG59IGVsc2Uge1xuICB0aGlzLnR5Y2hlaSA9IGltcGw7XG59XG5cbn0pKFxuICB0aGlzLFxuICAodHlwZW9mIG1vZHVsZSkgPT0gJ29iamVjdCcgJiYgbW9kdWxlLCAgICAvLyBwcmVzZW50IGluIG5vZGUuanNcbiAgKHR5cGVvZiBkZWZpbmUpID09ICdmdW5jdGlvbicgJiYgZGVmaW5lICAgLy8gcHJlc2VudCB3aXRoIGFuIEFNRCBsb2FkZXJcbik7XG5cblxuIiwiLy8gQSBKYXZhc2NyaXB0IGltcGxlbWVudGFpb24gb2YgdGhlIFwieG9yMTI4XCIgcHJuZyBhbGdvcml0aG0gYnlcbi8vIEdlb3JnZSBNYXJzYWdsaWEuICBTZWUgaHR0cDovL3d3dy5qc3RhdHNvZnQub3JnL3YwOC9pMTQvcGFwZXJcblxuKGZ1bmN0aW9uKGdsb2JhbCwgbW9kdWxlLCBkZWZpbmUpIHtcblxuZnVuY3Rpb24gWG9yR2VuKHNlZWQpIHtcbiAgdmFyIG1lID0gdGhpcywgc3Ryc2VlZCA9ICcnO1xuXG4gIG1lLnggPSAwO1xuICBtZS55ID0gMDtcbiAgbWUueiA9IDA7XG4gIG1lLncgPSAwO1xuXG4gIC8vIFNldCB1cCBnZW5lcmF0b3IgZnVuY3Rpb24uXG4gIG1lLm5leHQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgdCA9IG1lLnggXiAobWUueCA8PCAxMSk7XG4gICAgbWUueCA9IG1lLnk7XG4gICAgbWUueSA9IG1lLno7XG4gICAgbWUueiA9IG1lLnc7XG4gICAgcmV0dXJuIG1lLncgXj0gKG1lLncgPj4+IDE5KSBeIHQgXiAodCA+Pj4gOCk7XG4gIH07XG5cbiAgaWYgKHNlZWQgPT09IChzZWVkIHwgMCkpIHtcbiAgICAvLyBJbnRlZ2VyIHNlZWQuXG4gICAgbWUueCA9IHNlZWQ7XG4gIH0gZWxzZSB7XG4gICAgLy8gU3RyaW5nIHNlZWQuXG4gICAgc3Ryc2VlZCArPSBzZWVkO1xuICB9XG5cbiAgLy8gTWl4IGluIHN0cmluZyBzZWVkLCB0aGVuIGRpc2NhcmQgYW4gaW5pdGlhbCBiYXRjaCBvZiA2NCB2YWx1ZXMuXG4gIGZvciAodmFyIGsgPSAwOyBrIDwgc3Ryc2VlZC5sZW5ndGggKyA2NDsgaysrKSB7XG4gICAgbWUueCBePSBzdHJzZWVkLmNoYXJDb2RlQXQoaykgfCAwO1xuICAgIG1lLm5leHQoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb3B5KGYsIHQpIHtcbiAgdC54ID0gZi54O1xuICB0LnkgPSBmLnk7XG4gIHQueiA9IGYuejtcbiAgdC53ID0gZi53O1xuICByZXR1cm4gdDtcbn1cblxuZnVuY3Rpb24gaW1wbChzZWVkLCBvcHRzKSB7XG4gIHZhciB4ZyA9IG5ldyBYb3JHZW4oc2VlZCksXG4gICAgICBzdGF0ZSA9IG9wdHMgJiYgb3B0cy5zdGF0ZSxcbiAgICAgIHBybmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuICh4Zy5uZXh0KCkgPj4+IDApIC8gMHgxMDAwMDAwMDA7IH07XG4gIHBybmcuZG91YmxlID0gZnVuY3Rpb24oKSB7XG4gICAgZG8ge1xuICAgICAgdmFyIHRvcCA9IHhnLm5leHQoKSA+Pj4gMTEsXG4gICAgICAgICAgYm90ID0gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMCxcbiAgICAgICAgICByZXN1bHQgPSAodG9wICsgYm90KSAvICgxIDw8IDIxKTtcbiAgICB9IHdoaWxlIChyZXN1bHQgPT09IDApO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG4gIHBybmcuaW50MzIgPSB4Zy5uZXh0O1xuICBwcm5nLnF1aWNrID0gcHJuZztcbiAgaWYgKHN0YXRlKSB7XG4gICAgaWYgKHR5cGVvZihzdGF0ZSkgPT0gJ29iamVjdCcpIGNvcHkoc3RhdGUsIHhnKTtcbiAgICBwcm5nLnN0YXRlID0gZnVuY3Rpb24oKSB7IHJldHVybiBjb3B5KHhnLCB7fSk7IH1cbiAgfVxuICByZXR1cm4gcHJuZztcbn1cblxuaWYgKG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cykge1xuICBtb2R1bGUuZXhwb3J0cyA9IGltcGw7XG59IGVsc2UgaWYgKGRlZmluZSAmJiBkZWZpbmUuYW1kKSB7XG4gIGRlZmluZShmdW5jdGlvbigpIHsgcmV0dXJuIGltcGw7IH0pO1xufSBlbHNlIHtcbiAgdGhpcy54b3IxMjggPSBpbXBsO1xufVxuXG59KShcbiAgdGhpcyxcbiAgKHR5cGVvZiBtb2R1bGUpID09ICdvYmplY3QnICYmIG1vZHVsZSwgICAgLy8gcHJlc2VudCBpbiBub2RlLmpzXG4gICh0eXBlb2YgZGVmaW5lKSA9PSAnZnVuY3Rpb24nICYmIGRlZmluZSAgIC8vIHByZXNlbnQgd2l0aCBhbiBBTUQgbG9hZGVyXG4pO1xuXG5cbiIsIi8vIEEgSmF2YXNjcmlwdCBpbXBsZW1lbnRhaW9uIG9mIFJpY2hhcmQgQnJlbnQncyBYb3JnZW5zIHhvcjQwOTYgYWxnb3JpdGhtLlxuLy9cbi8vIFRoaXMgZmFzdCBub24tY3J5cHRvZ3JhcGhpYyByYW5kb20gbnVtYmVyIGdlbmVyYXRvciBpcyBkZXNpZ25lZCBmb3Jcbi8vIHVzZSBpbiBNb250ZS1DYXJsbyBhbGdvcml0aG1zLiBJdCBjb21iaW5lcyBhIGxvbmctcGVyaW9kIHhvcnNoaWZ0XG4vLyBnZW5lcmF0b3Igd2l0aCBhIFdleWwgZ2VuZXJhdG9yLCBhbmQgaXQgcGFzc2VzIGFsbCBjb21tb24gYmF0dGVyaWVzXG4vLyBvZiBzdGFzdGljaWFsIHRlc3RzIGZvciByYW5kb21uZXNzIHdoaWxlIGNvbnN1bWluZyBvbmx5IGEgZmV3IG5hbm9zZWNvbmRzXG4vLyBmb3IgZWFjaCBwcm5nIGdlbmVyYXRlZC4gIEZvciBiYWNrZ3JvdW5kIG9uIHRoZSBnZW5lcmF0b3IsIHNlZSBCcmVudCdzXG4vLyBwYXBlcjogXCJTb21lIGxvbmctcGVyaW9kIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9ycyB1c2luZyBzaGlmdHMgYW5kIHhvcnMuXCJcbi8vIGh0dHA6Ly9hcnhpdi5vcmcvcGRmLzEwMDQuMzExNXYxLnBkZlxuLy9cbi8vIFVzYWdlOlxuLy9cbi8vIHZhciB4b3I0MDk2ID0gcmVxdWlyZSgneG9yNDA5NicpO1xuLy8gcmFuZG9tID0geG9yNDA5NigxKTsgICAgICAgICAgICAgICAgICAgICAgICAvLyBTZWVkIHdpdGggaW50MzIgb3Igc3RyaW5nLlxuLy8gYXNzZXJ0LmVxdWFsKHJhbmRvbSgpLCAwLjE1MjA0MzY0NTA1Mzg1NDcpOyAvLyAoMCwgMSkgcmFuZ2UsIDUzIGJpdHMuXG4vLyBhc3NlcnQuZXF1YWwocmFuZG9tLmludDMyKCksIDE4MDY1MzQ4OTcpOyAgIC8vIHNpZ25lZCBpbnQzMiwgMzIgYml0cy5cbi8vXG4vLyBGb3Igbm9uemVybyBudW1lcmljIGtleXMsIHRoaXMgaW1wZWxlbWVudGF0aW9uIHByb3ZpZGVzIGEgc2VxdWVuY2Vcbi8vIGlkZW50aWNhbCB0byB0aGF0IGJ5IEJyZW50J3MgeG9yZ2VucyAzIGltcGxlbWVudGFpb24gaW4gQy4gIFRoaXNcbi8vIGltcGxlbWVudGF0aW9uIGFsc28gcHJvdmlkZXMgZm9yIGluaXRhbGl6aW5nIHRoZSBnZW5lcmF0b3Igd2l0aFxuLy8gc3RyaW5nIHNlZWRzLCBvciBmb3Igc2F2aW5nIGFuZCByZXN0b3JpbmcgdGhlIHN0YXRlIG9mIHRoZSBnZW5lcmF0b3IuXG4vL1xuLy8gT24gQ2hyb21lLCB0aGlzIHBybmcgYmVuY2htYXJrcyBhYm91dCAyLjEgdGltZXMgc2xvd2VyIHRoYW5cbi8vIEphdmFzY3JpcHQncyBidWlsdC1pbiBNYXRoLnJhbmRvbSgpLlxuXG4oZnVuY3Rpb24oZ2xvYmFsLCBtb2R1bGUsIGRlZmluZSkge1xuXG5mdW5jdGlvbiBYb3JHZW4oc2VlZCkge1xuICB2YXIgbWUgPSB0aGlzO1xuXG4gIC8vIFNldCB1cCBnZW5lcmF0b3IgZnVuY3Rpb24uXG4gIG1lLm5leHQgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgdyA9IG1lLncsXG4gICAgICAgIFggPSBtZS5YLCBpID0gbWUuaSwgdCwgdjtcbiAgICAvLyBVcGRhdGUgV2V5bCBnZW5lcmF0b3IuXG4gICAgbWUudyA9IHcgPSAodyArIDB4NjFjODg2NDcpIHwgMDtcbiAgICAvLyBVcGRhdGUgeG9yIGdlbmVyYXRvci5cbiAgICB2ID0gWFsoaSArIDM0KSAmIDEyN107XG4gICAgdCA9IFhbaSA9ICgoaSArIDEpICYgMTI3KV07XG4gICAgdiBePSB2IDw8IDEzO1xuICAgIHQgXj0gdCA8PCAxNztcbiAgICB2IF49IHYgPj4+IDE1O1xuICAgIHQgXj0gdCA+Pj4gMTI7XG4gICAgLy8gVXBkYXRlIFhvciBnZW5lcmF0b3IgYXJyYXkgc3RhdGUuXG4gICAgdiA9IFhbaV0gPSB2IF4gdDtcbiAgICBtZS5pID0gaTtcbiAgICAvLyBSZXN1bHQgaXMgdGhlIGNvbWJpbmF0aW9uLlxuICAgIHJldHVybiAodiArICh3IF4gKHcgPj4+IDE2KSkpIHwgMDtcbiAgfTtcblxuICBmdW5jdGlvbiBpbml0KG1lLCBzZWVkKSB7XG4gICAgdmFyIHQsIHYsIGksIGosIHcsIFggPSBbXSwgbGltaXQgPSAxMjg7XG4gICAgaWYgKHNlZWQgPT09IChzZWVkIHwgMCkpIHtcbiAgICAgIC8vIE51bWVyaWMgc2VlZHMgaW5pdGlhbGl6ZSB2LCB3aGljaCBpcyB1c2VkIHRvIGdlbmVyYXRlcyBYLlxuICAgICAgdiA9IHNlZWQ7XG4gICAgICBzZWVkID0gbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gU3RyaW5nIHNlZWRzIGFyZSBtaXhlZCBpbnRvIHYgYW5kIFggb25lIGNoYXJhY3RlciBhdCBhIHRpbWUuXG4gICAgICBzZWVkID0gc2VlZCArICdcXDAnO1xuICAgICAgdiA9IDA7XG4gICAgICBsaW1pdCA9IE1hdGgubWF4KGxpbWl0LCBzZWVkLmxlbmd0aCk7XG4gICAgfVxuICAgIC8vIEluaXRpYWxpemUgY2lyY3VsYXIgYXJyYXkgYW5kIHdleWwgdmFsdWUuXG4gICAgZm9yIChpID0gMCwgaiA9IC0zMjsgaiA8IGxpbWl0OyArK2opIHtcbiAgICAgIC8vIFB1dCB0aGUgdW5pY29kZSBjaGFyYWN0ZXJzIGludG8gdGhlIGFycmF5LCBhbmQgc2h1ZmZsZSB0aGVtLlxuICAgICAgaWYgKHNlZWQpIHYgXj0gc2VlZC5jaGFyQ29kZUF0KChqICsgMzIpICUgc2VlZC5sZW5ndGgpO1xuICAgICAgLy8gQWZ0ZXIgMzIgc2h1ZmZsZXMsIHRha2UgdiBhcyB0aGUgc3RhcnRpbmcgdyB2YWx1ZS5cbiAgICAgIGlmIChqID09PSAwKSB3ID0gdjtcbiAgICAgIHYgXj0gdiA8PCAxMDtcbiAgICAgIHYgXj0gdiA+Pj4gMTU7XG4gICAgICB2IF49IHYgPDwgNDtcbiAgICAgIHYgXj0gdiA+Pj4gMTM7XG4gICAgICBpZiAoaiA+PSAwKSB7XG4gICAgICAgIHcgPSAodyArIDB4NjFjODg2NDcpIHwgMDsgICAgIC8vIFdleWwuXG4gICAgICAgIHQgPSAoWFtqICYgMTI3XSBePSAodiArIHcpKTsgIC8vIENvbWJpbmUgeG9yIGFuZCB3ZXlsIHRvIGluaXQgYXJyYXkuXG4gICAgICAgIGkgPSAoMCA9PSB0KSA/IGkgKyAxIDogMDsgICAgIC8vIENvdW50IHplcm9lcy5cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gV2UgaGF2ZSBkZXRlY3RlZCBhbGwgemVyb2VzOyBtYWtlIHRoZSBrZXkgbm9uemVyby5cbiAgICBpZiAoaSA+PSAxMjgpIHtcbiAgICAgIFhbKHNlZWQgJiYgc2VlZC5sZW5ndGggfHwgMCkgJiAxMjddID0gLTE7XG4gICAgfVxuICAgIC8vIFJ1biB0aGUgZ2VuZXJhdG9yIDUxMiB0aW1lcyB0byBmdXJ0aGVyIG1peCB0aGUgc3RhdGUgYmVmb3JlIHVzaW5nIGl0LlxuICAgIC8vIEZhY3RvcmluZyB0aGlzIGFzIGEgZnVuY3Rpb24gc2xvd3MgdGhlIG1haW4gZ2VuZXJhdG9yLCBzbyBpdCBpcyBqdXN0XG4gICAgLy8gdW5yb2xsZWQgaGVyZS4gIFRoZSB3ZXlsIGdlbmVyYXRvciBpcyBub3QgYWR2YW5jZWQgd2hpbGUgd2FybWluZyB1cC5cbiAgICBpID0gMTI3O1xuICAgIGZvciAoaiA9IDQgKiAxMjg7IGogPiAwOyAtLWopIHtcbiAgICAgIHYgPSBYWyhpICsgMzQpICYgMTI3XTtcbiAgICAgIHQgPSBYW2kgPSAoKGkgKyAxKSAmIDEyNyldO1xuICAgICAgdiBePSB2IDw8IDEzO1xuICAgICAgdCBePSB0IDw8IDE3O1xuICAgICAgdiBePSB2ID4+PiAxNTtcbiAgICAgIHQgXj0gdCA+Pj4gMTI7XG4gICAgICBYW2ldID0gdiBeIHQ7XG4gICAgfVxuICAgIC8vIFN0b3Jpbmcgc3RhdGUgYXMgb2JqZWN0IG1lbWJlcnMgaXMgZmFzdGVyIHRoYW4gdXNpbmcgY2xvc3VyZSB2YXJpYWJsZXMuXG4gICAgbWUudyA9IHc7XG4gICAgbWUuWCA9IFg7XG4gICAgbWUuaSA9IGk7XG4gIH1cblxuICBpbml0KG1lLCBzZWVkKTtcbn1cblxuZnVuY3Rpb24gY29weShmLCB0KSB7XG4gIHQuaSA9IGYuaTtcbiAgdC53ID0gZi53O1xuICB0LlggPSBmLlguc2xpY2UoKTtcbiAgcmV0dXJuIHQ7XG59O1xuXG5mdW5jdGlvbiBpbXBsKHNlZWQsIG9wdHMpIHtcbiAgaWYgKHNlZWQgPT0gbnVsbCkgc2VlZCA9ICsobmV3IERhdGUpO1xuICB2YXIgeGcgPSBuZXcgWG9yR2VuKHNlZWQpLFxuICAgICAgc3RhdGUgPSBvcHRzICYmIG9wdHMuc3RhdGUsXG4gICAgICBwcm5nID0gZnVuY3Rpb24oKSB7IHJldHVybiAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwOyB9O1xuICBwcm5nLmRvdWJsZSA9IGZ1bmN0aW9uKCkge1xuICAgIGRvIHtcbiAgICAgIHZhciB0b3AgPSB4Zy5uZXh0KCkgPj4+IDExLFxuICAgICAgICAgIGJvdCA9ICh4Zy5uZXh0KCkgPj4+IDApIC8gMHgxMDAwMDAwMDAsXG4gICAgICAgICAgcmVzdWx0ID0gKHRvcCArIGJvdCkgLyAoMSA8PCAyMSk7XG4gICAgfSB3aGlsZSAocmVzdWx0ID09PSAwKTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9O1xuICBwcm5nLmludDMyID0geGcubmV4dDtcbiAgcHJuZy5xdWljayA9IHBybmc7XG4gIGlmIChzdGF0ZSkge1xuICAgIGlmIChzdGF0ZS5YKSBjb3B5KHN0YXRlLCB4Zyk7XG4gICAgcHJuZy5zdGF0ZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gY29weSh4Zywge30pOyB9XG4gIH1cbiAgcmV0dXJuIHBybmc7XG59XG5cbmlmIChtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMpIHtcbiAgbW9kdWxlLmV4cG9ydHMgPSBpbXBsO1xufSBlbHNlIGlmIChkZWZpbmUgJiYgZGVmaW5lLmFtZCkge1xuICBkZWZpbmUoZnVuY3Rpb24oKSB7IHJldHVybiBpbXBsOyB9KTtcbn0gZWxzZSB7XG4gIHRoaXMueG9yNDA5NiA9IGltcGw7XG59XG5cbn0pKFxuICB0aGlzLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB3aW5kb3cgb2JqZWN0IG9yIGdsb2JhbFxuICAodHlwZW9mIG1vZHVsZSkgPT0gJ29iamVjdCcgJiYgbW9kdWxlLCAgICAvLyBwcmVzZW50IGluIG5vZGUuanNcbiAgKHR5cGVvZiBkZWZpbmUpID09ICdmdW5jdGlvbicgJiYgZGVmaW5lICAgLy8gcHJlc2VudCB3aXRoIGFuIEFNRCBsb2FkZXJcbik7XG4iLCIvLyBBIEphdmFzY3JpcHQgaW1wbGVtZW50YWlvbiBvZiB0aGUgXCJ4b3JzaGlmdDdcIiBhbGdvcml0aG0gYnlcbi8vIEZyYW7Dp29pcyBQYW5uZXRvbiBhbmQgUGllcnJlIEwnZWN1eWVyOlxuLy8gXCJPbiB0aGUgWG9yZ3NoaWZ0IFJhbmRvbSBOdW1iZXIgR2VuZXJhdG9yc1wiXG4vLyBodHRwOi8vc2FsdWMuZW5nci51Y29ubi5lZHUvcmVmcy9jcnlwdG8vcm5nL3Bhbm5ldG9uMDVvbnRoZXhvcnNoaWZ0LnBkZlxuXG4oZnVuY3Rpb24oZ2xvYmFsLCBtb2R1bGUsIGRlZmluZSkge1xuXG5mdW5jdGlvbiBYb3JHZW4oc2VlZCkge1xuICB2YXIgbWUgPSB0aGlzO1xuXG4gIC8vIFNldCB1cCBnZW5lcmF0b3IgZnVuY3Rpb24uXG4gIG1lLm5leHQgPSBmdW5jdGlvbigpIHtcbiAgICAvLyBVcGRhdGUgeG9yIGdlbmVyYXRvci5cbiAgICB2YXIgWCA9IG1lLngsIGkgPSBtZS5pLCB0LCB2LCB3O1xuICAgIHQgPSBYW2ldOyB0IF49ICh0ID4+PiA3KTsgdiA9IHQgXiAodCA8PCAyNCk7XG4gICAgdCA9IFhbKGkgKyAxKSAmIDddOyB2IF49IHQgXiAodCA+Pj4gMTApO1xuICAgIHQgPSBYWyhpICsgMykgJiA3XTsgdiBePSB0IF4gKHQgPj4+IDMpO1xuICAgIHQgPSBYWyhpICsgNCkgJiA3XTsgdiBePSB0IF4gKHQgPDwgNyk7XG4gICAgdCA9IFhbKGkgKyA3KSAmIDddOyB0ID0gdCBeICh0IDw8IDEzKTsgdiBePSB0IF4gKHQgPDwgOSk7XG4gICAgWFtpXSA9IHY7XG4gICAgbWUuaSA9IChpICsgMSkgJiA3O1xuICAgIHJldHVybiB2O1xuICB9O1xuXG4gIGZ1bmN0aW9uIGluaXQobWUsIHNlZWQpIHtcbiAgICB2YXIgaiwgdywgWCA9IFtdO1xuXG4gICAgaWYgKHNlZWQgPT09IChzZWVkIHwgMCkpIHtcbiAgICAgIC8vIFNlZWQgc3RhdGUgYXJyYXkgdXNpbmcgYSAzMi1iaXQgaW50ZWdlci5cbiAgICAgIHcgPSBYWzBdID0gc2VlZDtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gU2VlZCBzdGF0ZSB1c2luZyBhIHN0cmluZy5cbiAgICAgIHNlZWQgPSAnJyArIHNlZWQ7XG4gICAgICBmb3IgKGogPSAwOyBqIDwgc2VlZC5sZW5ndGg7ICsraikge1xuICAgICAgICBYW2ogJiA3XSA9IChYW2ogJiA3XSA8PCAxNSkgXlxuICAgICAgICAgICAgKHNlZWQuY2hhckNvZGVBdChqKSArIFhbKGogKyAxKSAmIDddIDw8IDEzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gRW5mb3JjZSBhbiBhcnJheSBsZW5ndGggb2YgOCwgbm90IGFsbCB6ZXJvZXMuXG4gICAgd2hpbGUgKFgubGVuZ3RoIDwgOCkgWC5wdXNoKDApO1xuICAgIGZvciAoaiA9IDA7IGogPCA4ICYmIFhbal0gPT09IDA7ICsraik7XG4gICAgaWYgKGogPT0gOCkgdyA9IFhbN10gPSAtMTsgZWxzZSB3ID0gWFtqXTtcblxuICAgIG1lLnggPSBYO1xuICAgIG1lLmkgPSAwO1xuXG4gICAgLy8gRGlzY2FyZCBhbiBpbml0aWFsIDI1NiB2YWx1ZXMuXG4gICAgZm9yIChqID0gMjU2OyBqID4gMDsgLS1qKSB7XG4gICAgICBtZS5uZXh0KCk7XG4gICAgfVxuICB9XG5cbiAgaW5pdChtZSwgc2VlZCk7XG59XG5cbmZ1bmN0aW9uIGNvcHkoZiwgdCkge1xuICB0LnggPSBmLnguc2xpY2UoKTtcbiAgdC5pID0gZi5pO1xuICByZXR1cm4gdDtcbn1cblxuZnVuY3Rpb24gaW1wbChzZWVkLCBvcHRzKSB7XG4gIGlmIChzZWVkID09IG51bGwpIHNlZWQgPSArKG5ldyBEYXRlKTtcbiAgdmFyIHhnID0gbmV3IFhvckdlbihzZWVkKSxcbiAgICAgIHN0YXRlID0gb3B0cyAmJiBvcHRzLnN0YXRlLFxuICAgICAgcHJuZyA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMDsgfTtcbiAgcHJuZy5kb3VibGUgPSBmdW5jdGlvbigpIHtcbiAgICBkbyB7XG4gICAgICB2YXIgdG9wID0geGcubmV4dCgpID4+PiAxMSxcbiAgICAgICAgICBib3QgPSAoeGcubmV4dCgpID4+PiAwKSAvIDB4MTAwMDAwMDAwLFxuICAgICAgICAgIHJlc3VsdCA9ICh0b3AgKyBib3QpIC8gKDEgPDwgMjEpO1xuICAgIH0gd2hpbGUgKHJlc3VsdCA9PT0gMCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbiAgcHJuZy5pbnQzMiA9IHhnLm5leHQ7XG4gIHBybmcucXVpY2sgPSBwcm5nO1xuICBpZiAoc3RhdGUpIHtcbiAgICBpZiAoc3RhdGUueCkgY29weShzdGF0ZSwgeGcpO1xuICAgIHBybmcuc3RhdGUgPSBmdW5jdGlvbigpIHsgcmV0dXJuIGNvcHkoeGcsIHt9KTsgfVxuICB9XG4gIHJldHVybiBwcm5nO1xufVxuXG5pZiAobW9kdWxlICYmIG1vZHVsZS5leHBvcnRzKSB7XG4gIG1vZHVsZS5leHBvcnRzID0gaW1wbDtcbn0gZWxzZSBpZiAoZGVmaW5lICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKGZ1bmN0aW9uKCkgeyByZXR1cm4gaW1wbDsgfSk7XG59IGVsc2Uge1xuICB0aGlzLnhvcnNoaWZ0NyA9IGltcGw7XG59XG5cbn0pKFxuICB0aGlzLFxuICAodHlwZW9mIG1vZHVsZSkgPT0gJ29iamVjdCcgJiYgbW9kdWxlLCAgICAvLyBwcmVzZW50IGluIG5vZGUuanNcbiAgKHR5cGVvZiBkZWZpbmUpID09ICdmdW5jdGlvbicgJiYgZGVmaW5lICAgLy8gcHJlc2VudCB3aXRoIGFuIEFNRCBsb2FkZXJcbik7XG5cbiIsIi8vIEEgSmF2YXNjcmlwdCBpbXBsZW1lbnRhaW9uIG9mIHRoZSBcInhvcndvd1wiIHBybmcgYWxnb3JpdGhtIGJ5XG4vLyBHZW9yZ2UgTWFyc2FnbGlhLiAgU2VlIGh0dHA6Ly93d3cuanN0YXRzb2Z0Lm9yZy92MDgvaTE0L3BhcGVyXG5cbihmdW5jdGlvbihnbG9iYWwsIG1vZHVsZSwgZGVmaW5lKSB7XG5cbmZ1bmN0aW9uIFhvckdlbihzZWVkKSB7XG4gIHZhciBtZSA9IHRoaXMsIHN0cnNlZWQgPSAnJztcblxuICAvLyBTZXQgdXAgZ2VuZXJhdG9yIGZ1bmN0aW9uLlxuICBtZS5uZXh0ID0gZnVuY3Rpb24oKSB7XG4gICAgdmFyIHQgPSAobWUueCBeIChtZS54ID4+PiAyKSk7XG4gICAgbWUueCA9IG1lLnk7IG1lLnkgPSBtZS56OyBtZS56ID0gbWUudzsgbWUudyA9IG1lLnY7XG4gICAgcmV0dXJuIChtZS5kID0gKG1lLmQgKyAzNjI0MzcgfCAwKSkgK1xuICAgICAgIChtZS52ID0gKG1lLnYgXiAobWUudiA8PCA0KSkgXiAodCBeICh0IDw8IDEpKSkgfCAwO1xuICB9O1xuXG4gIG1lLnggPSAwO1xuICBtZS55ID0gMDtcbiAgbWUueiA9IDA7XG4gIG1lLncgPSAwO1xuICBtZS52ID0gMDtcblxuICBpZiAoc2VlZCA9PT0gKHNlZWQgfCAwKSkge1xuICAgIC8vIEludGVnZXIgc2VlZC5cbiAgICBtZS54ID0gc2VlZDtcbiAgfSBlbHNlIHtcbiAgICAvLyBTdHJpbmcgc2VlZC5cbiAgICBzdHJzZWVkICs9IHNlZWQ7XG4gIH1cblxuICAvLyBNaXggaW4gc3RyaW5nIHNlZWQsIHRoZW4gZGlzY2FyZCBhbiBpbml0aWFsIGJhdGNoIG9mIDY0IHZhbHVlcy5cbiAgZm9yICh2YXIgayA9IDA7IGsgPCBzdHJzZWVkLmxlbmd0aCArIDY0OyBrKyspIHtcbiAgICBtZS54IF49IHN0cnNlZWQuY2hhckNvZGVBdChrKSB8IDA7XG4gICAgaWYgKGsgPT0gc3Ryc2VlZC5sZW5ndGgpIHtcbiAgICAgIG1lLmQgPSBtZS54IDw8IDEwIF4gbWUueCA+Pj4gNDtcbiAgICB9XG4gICAgbWUubmV4dCgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGNvcHkoZiwgdCkge1xuICB0LnggPSBmLng7XG4gIHQueSA9IGYueTtcbiAgdC56ID0gZi56O1xuICB0LncgPSBmLnc7XG4gIHQudiA9IGYudjtcbiAgdC5kID0gZi5kO1xuICByZXR1cm4gdDtcbn1cblxuZnVuY3Rpb24gaW1wbChzZWVkLCBvcHRzKSB7XG4gIHZhciB4ZyA9IG5ldyBYb3JHZW4oc2VlZCksXG4gICAgICBzdGF0ZSA9IG9wdHMgJiYgb3B0cy5zdGF0ZSxcbiAgICAgIHBybmcgPSBmdW5jdGlvbigpIHsgcmV0dXJuICh4Zy5uZXh0KCkgPj4+IDApIC8gMHgxMDAwMDAwMDA7IH07XG4gIHBybmcuZG91YmxlID0gZnVuY3Rpb24oKSB7XG4gICAgZG8ge1xuICAgICAgdmFyIHRvcCA9IHhnLm5leHQoKSA+Pj4gMTEsXG4gICAgICAgICAgYm90ID0gKHhnLm5leHQoKSA+Pj4gMCkgLyAweDEwMDAwMDAwMCxcbiAgICAgICAgICByZXN1bHQgPSAodG9wICsgYm90KSAvICgxIDw8IDIxKTtcbiAgICB9IHdoaWxlIChyZXN1bHQgPT09IDApO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH07XG4gIHBybmcuaW50MzIgPSB4Zy5uZXh0O1xuICBwcm5nLnF1aWNrID0gcHJuZztcbiAgaWYgKHN0YXRlKSB7XG4gICAgaWYgKHR5cGVvZihzdGF0ZSkgPT0gJ29iamVjdCcpIGNvcHkoc3RhdGUsIHhnKTtcbiAgICBwcm5nLnN0YXRlID0gZnVuY3Rpb24oKSB7IHJldHVybiBjb3B5KHhnLCB7fSk7IH1cbiAgfVxuICByZXR1cm4gcHJuZztcbn1cblxuaWYgKG1vZHVsZSAmJiBtb2R1bGUuZXhwb3J0cykge1xuICBtb2R1bGUuZXhwb3J0cyA9IGltcGw7XG59IGVsc2UgaWYgKGRlZmluZSAmJiBkZWZpbmUuYW1kKSB7XG4gIGRlZmluZShmdW5jdGlvbigpIHsgcmV0dXJuIGltcGw7IH0pO1xufSBlbHNlIHtcbiAgdGhpcy54b3J3b3cgPSBpbXBsO1xufVxuXG59KShcbiAgdGhpcyxcbiAgKHR5cGVvZiBtb2R1bGUpID09ICdvYmplY3QnICYmIG1vZHVsZSwgICAgLy8gcHJlc2VudCBpbiBub2RlLmpzXG4gICh0eXBlb2YgZGVmaW5lKSA9PSAnZnVuY3Rpb24nICYmIGRlZmluZSAgIC8vIHByZXNlbnQgd2l0aCBhbiBBTUQgbG9hZGVyXG4pO1xuXG5cbiIsIi8qXG5Db3B5cmlnaHQgMjAxOSBEYXZpZCBCYXUuXG5cblBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZ1xuYSBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlXG5cIlNvZnR3YXJlXCIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmdcbndpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCxcbmRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0b1xucGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvXG50aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG5cblRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlXG5pbmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cblxuVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCxcbkVYUFJFU1MgT1IgSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRlxuTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULlxuSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTllcbkNMQUlNLCBEQU1BR0VTIE9SIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsXG5UT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRVxuU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuXG5cbiovXG5cbihmdW5jdGlvbiAoZ2xvYmFsLCBwb29sLCBtYXRoKSB7XG4vL1xuLy8gVGhlIGZvbGxvd2luZyBjb25zdGFudHMgYXJlIHJlbGF0ZWQgdG8gSUVFRSA3NTQgbGltaXRzLlxuLy9cblxudmFyIHdpZHRoID0gMjU2LCAgICAgICAgLy8gZWFjaCBSQzQgb3V0cHV0IGlzIDAgPD0geCA8IDI1NlxuICAgIGNodW5rcyA9IDYsICAgICAgICAgLy8gYXQgbGVhc3Qgc2l4IFJDNCBvdXRwdXRzIGZvciBlYWNoIGRvdWJsZVxuICAgIGRpZ2l0cyA9IDUyLCAgICAgICAgLy8gdGhlcmUgYXJlIDUyIHNpZ25pZmljYW50IGRpZ2l0cyBpbiBhIGRvdWJsZVxuICAgIHJuZ25hbWUgPSAncmFuZG9tJywgLy8gcm5nbmFtZTogbmFtZSBmb3IgTWF0aC5yYW5kb20gYW5kIE1hdGguc2VlZHJhbmRvbVxuICAgIHN0YXJ0ZGVub20gPSBtYXRoLnBvdyh3aWR0aCwgY2h1bmtzKSxcbiAgICBzaWduaWZpY2FuY2UgPSBtYXRoLnBvdygyLCBkaWdpdHMpLFxuICAgIG92ZXJmbG93ID0gc2lnbmlmaWNhbmNlICogMixcbiAgICBtYXNrID0gd2lkdGggLSAxLFxuICAgIG5vZGVjcnlwdG87ICAgICAgICAgLy8gbm9kZS5qcyBjcnlwdG8gbW9kdWxlLCBpbml0aWFsaXplZCBhdCB0aGUgYm90dG9tLlxuXG4vL1xuLy8gc2VlZHJhbmRvbSgpXG4vLyBUaGlzIGlzIHRoZSBzZWVkcmFuZG9tIGZ1bmN0aW9uIGRlc2NyaWJlZCBhYm92ZS5cbi8vXG5mdW5jdGlvbiBzZWVkcmFuZG9tKHNlZWQsIG9wdGlvbnMsIGNhbGxiYWNrKSB7XG4gIHZhciBrZXkgPSBbXTtcbiAgb3B0aW9ucyA9IChvcHRpb25zID09IHRydWUpID8geyBlbnRyb3B5OiB0cnVlIH0gOiAob3B0aW9ucyB8fCB7fSk7XG5cbiAgLy8gRmxhdHRlbiB0aGUgc2VlZCBzdHJpbmcgb3IgYnVpbGQgb25lIGZyb20gbG9jYWwgZW50cm9weSBpZiBuZWVkZWQuXG4gIHZhciBzaG9ydHNlZWQgPSBtaXhrZXkoZmxhdHRlbihcbiAgICBvcHRpb25zLmVudHJvcHkgPyBbc2VlZCwgdG9zdHJpbmcocG9vbCldIDpcbiAgICAoc2VlZCA9PSBudWxsKSA/IGF1dG9zZWVkKCkgOiBzZWVkLCAzKSwga2V5KTtcblxuICAvLyBVc2UgdGhlIHNlZWQgdG8gaW5pdGlhbGl6ZSBhbiBBUkM0IGdlbmVyYXRvci5cbiAgdmFyIGFyYzQgPSBuZXcgQVJDNChrZXkpO1xuXG4gIC8vIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIHJhbmRvbSBkb3VibGUgaW4gWzAsIDEpIHRoYXQgY29udGFpbnNcbiAgLy8gcmFuZG9tbmVzcyBpbiBldmVyeSBiaXQgb2YgdGhlIG1hbnRpc3NhIG9mIHRoZSBJRUVFIDc1NCB2YWx1ZS5cbiAgdmFyIHBybmcgPSBmdW5jdGlvbigpIHtcbiAgICB2YXIgbiA9IGFyYzQuZyhjaHVua3MpLCAgICAgICAgICAgICAvLyBTdGFydCB3aXRoIGEgbnVtZXJhdG9yIG4gPCAyIF4gNDhcbiAgICAgICAgZCA9IHN0YXJ0ZGVub20sICAgICAgICAgICAgICAgICAvLyAgIGFuZCBkZW5vbWluYXRvciBkID0gMiBeIDQ4LlxuICAgICAgICB4ID0gMDsgICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgYW5kIG5vICdleHRyYSBsYXN0IGJ5dGUnLlxuICAgIHdoaWxlIChuIDwgc2lnbmlmaWNhbmNlKSB7ICAgICAgICAgIC8vIEZpbGwgdXAgYWxsIHNpZ25pZmljYW50IGRpZ2l0cyBieVxuICAgICAgbiA9IChuICsgeCkgKiB3aWR0aDsgICAgICAgICAgICAgIC8vICAgc2hpZnRpbmcgbnVtZXJhdG9yIGFuZFxuICAgICAgZCAqPSB3aWR0aDsgICAgICAgICAgICAgICAgICAgICAgIC8vICAgZGVub21pbmF0b3IgYW5kIGdlbmVyYXRpbmcgYVxuICAgICAgeCA9IGFyYzQuZygxKTsgICAgICAgICAgICAgICAgICAgIC8vICAgbmV3IGxlYXN0LXNpZ25pZmljYW50LWJ5dGUuXG4gICAgfVxuICAgIHdoaWxlIChuID49IG92ZXJmbG93KSB7ICAgICAgICAgICAgIC8vIFRvIGF2b2lkIHJvdW5kaW5nIHVwLCBiZWZvcmUgYWRkaW5nXG4gICAgICBuIC89IDI7ICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gICBsYXN0IGJ5dGUsIHNoaWZ0IGV2ZXJ5dGhpbmdcbiAgICAgIGQgLz0gMjsgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgIHJpZ2h0IHVzaW5nIGludGVnZXIgbWF0aCB1bnRpbFxuICAgICAgeCA+Pj49IDE7ICAgICAgICAgICAgICAgICAgICAgICAgIC8vICAgd2UgaGF2ZSBleGFjdGx5IHRoZSBkZXNpcmVkIGJpdHMuXG4gICAgfVxuICAgIHJldHVybiAobiArIHgpIC8gZDsgICAgICAgICAgICAgICAgIC8vIEZvcm0gdGhlIG51bWJlciB3aXRoaW4gWzAsIDEpLlxuICB9O1xuXG4gIHBybmcuaW50MzIgPSBmdW5jdGlvbigpIHsgcmV0dXJuIGFyYzQuZyg0KSB8IDA7IH1cbiAgcHJuZy5xdWljayA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gYXJjNC5nKDQpIC8gMHgxMDAwMDAwMDA7IH1cbiAgcHJuZy5kb3VibGUgPSBwcm5nO1xuXG4gIC8vIE1peCB0aGUgcmFuZG9tbmVzcyBpbnRvIGFjY3VtdWxhdGVkIGVudHJvcHkuXG4gIG1peGtleSh0b3N0cmluZyhhcmM0LlMpLCBwb29sKTtcblxuICAvLyBDYWxsaW5nIGNvbnZlbnRpb246IHdoYXQgdG8gcmV0dXJuIGFzIGEgZnVuY3Rpb24gb2YgcHJuZywgc2VlZCwgaXNfbWF0aC5cbiAgcmV0dXJuIChvcHRpb25zLnBhc3MgfHwgY2FsbGJhY2sgfHxcbiAgICAgIGZ1bmN0aW9uKHBybmcsIHNlZWQsIGlzX21hdGhfY2FsbCwgc3RhdGUpIHtcbiAgICAgICAgaWYgKHN0YXRlKSB7XG4gICAgICAgICAgLy8gTG9hZCB0aGUgYXJjNCBzdGF0ZSBmcm9tIHRoZSBnaXZlbiBzdGF0ZSBpZiBpdCBoYXMgYW4gUyBhcnJheS5cbiAgICAgICAgICBpZiAoc3RhdGUuUykgeyBjb3B5KHN0YXRlLCBhcmM0KTsgfVxuICAgICAgICAgIC8vIE9ubHkgcHJvdmlkZSB0aGUgLnN0YXRlIG1ldGhvZCBpZiByZXF1ZXN0ZWQgdmlhIG9wdGlvbnMuc3RhdGUuXG4gICAgICAgICAgcHJuZy5zdGF0ZSA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gY29weShhcmM0LCB7fSk7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIGNhbGxlZCBhcyBhIG1ldGhvZCBvZiBNYXRoIChNYXRoLnNlZWRyYW5kb20oKSksIG11dGF0ZVxuICAgICAgICAvLyBNYXRoLnJhbmRvbSBiZWNhdXNlIHRoYXQgaXMgaG93IHNlZWRyYW5kb20uanMgaGFzIHdvcmtlZCBzaW5jZSB2MS4wLlxuICAgICAgICBpZiAoaXNfbWF0aF9jYWxsKSB7IG1hdGhbcm5nbmFtZV0gPSBwcm5nOyByZXR1cm4gc2VlZDsgfVxuXG4gICAgICAgIC8vIE90aGVyd2lzZSwgaXQgaXMgYSBuZXdlciBjYWxsaW5nIGNvbnZlbnRpb24sIHNvIHJldHVybiB0aGVcbiAgICAgICAgLy8gcHJuZyBkaXJlY3RseS5cbiAgICAgICAgZWxzZSByZXR1cm4gcHJuZztcbiAgICAgIH0pKFxuICBwcm5nLFxuICBzaG9ydHNlZWQsXG4gICdnbG9iYWwnIGluIG9wdGlvbnMgPyBvcHRpb25zLmdsb2JhbCA6ICh0aGlzID09IG1hdGgpLFxuICBvcHRpb25zLnN0YXRlKTtcbn1cblxuLy9cbi8vIEFSQzRcbi8vXG4vLyBBbiBBUkM0IGltcGxlbWVudGF0aW9uLiAgVGhlIGNvbnN0cnVjdG9yIHRha2VzIGEga2V5IGluIHRoZSBmb3JtIG9mXG4vLyBhbiBhcnJheSBvZiBhdCBtb3N0ICh3aWR0aCkgaW50ZWdlcnMgdGhhdCBzaG91bGQgYmUgMCA8PSB4IDwgKHdpZHRoKS5cbi8vXG4vLyBUaGUgZyhjb3VudCkgbWV0aG9kIHJldHVybnMgYSBwc2V1ZG9yYW5kb20gaW50ZWdlciB0aGF0IGNvbmNhdGVuYXRlc1xuLy8gdGhlIG5leHQgKGNvdW50KSBvdXRwdXRzIGZyb20gQVJDNC4gIEl0cyByZXR1cm4gdmFsdWUgaXMgYSBudW1iZXIgeFxuLy8gdGhhdCBpcyBpbiB0aGUgcmFuZ2UgMCA8PSB4IDwgKHdpZHRoIF4gY291bnQpLlxuLy9cbmZ1bmN0aW9uIEFSQzQoa2V5KSB7XG4gIHZhciB0LCBrZXlsZW4gPSBrZXkubGVuZ3RoLFxuICAgICAgbWUgPSB0aGlzLCBpID0gMCwgaiA9IG1lLmkgPSBtZS5qID0gMCwgcyA9IG1lLlMgPSBbXTtcblxuICAvLyBUaGUgZW1wdHkga2V5IFtdIGlzIHRyZWF0ZWQgYXMgWzBdLlxuICBpZiAoIWtleWxlbikgeyBrZXkgPSBba2V5bGVuKytdOyB9XG5cbiAgLy8gU2V0IHVwIFMgdXNpbmcgdGhlIHN0YW5kYXJkIGtleSBzY2hlZHVsaW5nIGFsZ29yaXRobS5cbiAgd2hpbGUgKGkgPCB3aWR0aCkge1xuICAgIHNbaV0gPSBpKys7XG4gIH1cbiAgZm9yIChpID0gMDsgaSA8IHdpZHRoOyBpKyspIHtcbiAgICBzW2ldID0gc1tqID0gbWFzayAmIChqICsga2V5W2kgJSBrZXlsZW5dICsgKHQgPSBzW2ldKSldO1xuICAgIHNbal0gPSB0O1xuICB9XG5cbiAgLy8gVGhlIFwiZ1wiIG1ldGhvZCByZXR1cm5zIHRoZSBuZXh0IChjb3VudCkgb3V0cHV0cyBhcyBvbmUgbnVtYmVyLlxuICAobWUuZyA9IGZ1bmN0aW9uKGNvdW50KSB7XG4gICAgLy8gVXNpbmcgaW5zdGFuY2UgbWVtYmVycyBpbnN0ZWFkIG9mIGNsb3N1cmUgc3RhdGUgbmVhcmx5IGRvdWJsZXMgc3BlZWQuXG4gICAgdmFyIHQsIHIgPSAwLFxuICAgICAgICBpID0gbWUuaSwgaiA9IG1lLmosIHMgPSBtZS5TO1xuICAgIHdoaWxlIChjb3VudC0tKSB7XG4gICAgICB0ID0gc1tpID0gbWFzayAmIChpICsgMSldO1xuICAgICAgciA9IHIgKiB3aWR0aCArIHNbbWFzayAmICgoc1tpXSA9IHNbaiA9IG1hc2sgJiAoaiArIHQpXSkgKyAoc1tqXSA9IHQpKV07XG4gICAgfVxuICAgIG1lLmkgPSBpOyBtZS5qID0gajtcbiAgICByZXR1cm4gcjtcbiAgICAvLyBGb3Igcm9idXN0IHVucHJlZGljdGFiaWxpdHksIHRoZSBmdW5jdGlvbiBjYWxsIGJlbG93IGF1dG9tYXRpY2FsbHlcbiAgICAvLyBkaXNjYXJkcyBhbiBpbml0aWFsIGJhdGNoIG9mIHZhbHVlcy4gIFRoaXMgaXMgY2FsbGVkIFJDNC1kcm9wWzI1Nl0uXG4gICAgLy8gU2VlIGh0dHA6Ly9nb29nbGUuY29tL3NlYXJjaD9xPXJzYStmbHVocmVyK3Jlc3BvbnNlJmJ0bklcbiAgfSkod2lkdGgpO1xufVxuXG4vL1xuLy8gY29weSgpXG4vLyBDb3BpZXMgaW50ZXJuYWwgc3RhdGUgb2YgQVJDNCB0byBvciBmcm9tIGEgcGxhaW4gb2JqZWN0LlxuLy9cbmZ1bmN0aW9uIGNvcHkoZiwgdCkge1xuICB0LmkgPSBmLmk7XG4gIHQuaiA9IGYuajtcbiAgdC5TID0gZi5TLnNsaWNlKCk7XG4gIHJldHVybiB0O1xufTtcblxuLy9cbi8vIGZsYXR0ZW4oKVxuLy8gQ29udmVydHMgYW4gb2JqZWN0IHRyZWUgdG8gbmVzdGVkIGFycmF5cyBvZiBzdHJpbmdzLlxuLy9cbmZ1bmN0aW9uIGZsYXR0ZW4ob2JqLCBkZXB0aCkge1xuICB2YXIgcmVzdWx0ID0gW10sIHR5cCA9ICh0eXBlb2Ygb2JqKSwgcHJvcDtcbiAgaWYgKGRlcHRoICYmIHR5cCA9PSAnb2JqZWN0Jykge1xuICAgIGZvciAocHJvcCBpbiBvYmopIHtcbiAgICAgIHRyeSB7IHJlc3VsdC5wdXNoKGZsYXR0ZW4ob2JqW3Byb3BdLCBkZXB0aCAtIDEpKTsgfSBjYXRjaCAoZSkge31cbiAgICB9XG4gIH1cbiAgcmV0dXJuIChyZXN1bHQubGVuZ3RoID8gcmVzdWx0IDogdHlwID09ICdzdHJpbmcnID8gb2JqIDogb2JqICsgJ1xcMCcpO1xufVxuXG4vL1xuLy8gbWl4a2V5KClcbi8vIE1peGVzIGEgc3RyaW5nIHNlZWQgaW50byBhIGtleSB0aGF0IGlzIGFuIGFycmF5IG9mIGludGVnZXJzLCBhbmRcbi8vIHJldHVybnMgYSBzaG9ydGVuZWQgc3RyaW5nIHNlZWQgdGhhdCBpcyBlcXVpdmFsZW50IHRvIHRoZSByZXN1bHQga2V5LlxuLy9cbmZ1bmN0aW9uIG1peGtleShzZWVkLCBrZXkpIHtcbiAgdmFyIHN0cmluZ3NlZWQgPSBzZWVkICsgJycsIHNtZWFyLCBqID0gMDtcbiAgd2hpbGUgKGogPCBzdHJpbmdzZWVkLmxlbmd0aCkge1xuICAgIGtleVttYXNrICYgal0gPVxuICAgICAgbWFzayAmICgoc21lYXIgXj0ga2V5W21hc2sgJiBqXSAqIDE5KSArIHN0cmluZ3NlZWQuY2hhckNvZGVBdChqKyspKTtcbiAgfVxuICByZXR1cm4gdG9zdHJpbmcoa2V5KTtcbn1cblxuLy9cbi8vIGF1dG9zZWVkKClcbi8vIFJldHVybnMgYW4gb2JqZWN0IGZvciBhdXRvc2VlZGluZywgdXNpbmcgd2luZG93LmNyeXB0byBhbmQgTm9kZSBjcnlwdG9cbi8vIG1vZHVsZSBpZiBhdmFpbGFibGUuXG4vL1xuZnVuY3Rpb24gYXV0b3NlZWQoKSB7XG4gIHRyeSB7XG4gICAgdmFyIG91dDtcbiAgICBpZiAobm9kZWNyeXB0byAmJiAob3V0ID0gbm9kZWNyeXB0by5yYW5kb21CeXRlcykpIHtcbiAgICAgIC8vIFRoZSB1c2Ugb2YgJ291dCcgdG8gcmVtZW1iZXIgcmFuZG9tQnl0ZXMgbWFrZXMgdGlnaHQgbWluaWZpZWQgY29kZS5cbiAgICAgIG91dCA9IG91dCh3aWR0aCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG91dCA9IG5ldyBVaW50OEFycmF5KHdpZHRoKTtcbiAgICAgIChnbG9iYWwuY3J5cHRvIHx8IGdsb2JhbC5tc0NyeXB0bykuZ2V0UmFuZG9tVmFsdWVzKG91dCk7XG4gICAgfVxuICAgIHJldHVybiB0b3N0cmluZyhvdXQpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgdmFyIGJyb3dzZXIgPSBnbG9iYWwubmF2aWdhdG9yLFxuICAgICAgICBwbHVnaW5zID0gYnJvd3NlciAmJiBicm93c2VyLnBsdWdpbnM7XG4gICAgcmV0dXJuIFsrbmV3IERhdGUsIGdsb2JhbCwgcGx1Z2lucywgZ2xvYmFsLnNjcmVlbiwgdG9zdHJpbmcocG9vbCldO1xuICB9XG59XG5cbi8vXG4vLyB0b3N0cmluZygpXG4vLyBDb252ZXJ0cyBhbiBhcnJheSBvZiBjaGFyY29kZXMgdG8gYSBzdHJpbmdcbi8vXG5mdW5jdGlvbiB0b3N0cmluZyhhKSB7XG4gIHJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KDAsIGEpO1xufVxuXG4vL1xuLy8gV2hlbiBzZWVkcmFuZG9tLmpzIGlzIGxvYWRlZCwgd2UgaW1tZWRpYXRlbHkgbWl4IGEgZmV3IGJpdHNcbi8vIGZyb20gdGhlIGJ1aWx0LWluIFJORyBpbnRvIHRoZSBlbnRyb3B5IHBvb2wuICBCZWNhdXNlIHdlIGRvXG4vLyBub3Qgd2FudCB0byBpbnRlcmZlcmUgd2l0aCBkZXRlcm1pbmlzdGljIFBSTkcgc3RhdGUgbGF0ZXIsXG4vLyBzZWVkcmFuZG9tIHdpbGwgbm90IGNhbGwgbWF0aC5yYW5kb20gb24gaXRzIG93biBhZ2FpbiBhZnRlclxuLy8gaW5pdGlhbGl6YXRpb24uXG4vL1xubWl4a2V5KG1hdGgucmFuZG9tKCksIHBvb2wpO1xuXG4vL1xuLy8gTm9kZWpzIGFuZCBBTUQgc3VwcG9ydDogZXhwb3J0IHRoZSBpbXBsZW1lbnRhdGlvbiBhcyBhIG1vZHVsZSB1c2luZ1xuLy8gZWl0aGVyIGNvbnZlbnRpb24uXG4vL1xuaWYgKCh0eXBlb2YgbW9kdWxlKSA9PSAnb2JqZWN0JyAmJiBtb2R1bGUuZXhwb3J0cykge1xuICBtb2R1bGUuZXhwb3J0cyA9IHNlZWRyYW5kb207XG4gIC8vIFdoZW4gaW4gbm9kZS5qcywgdHJ5IHVzaW5nIGNyeXB0byBwYWNrYWdlIGZvciBhdXRvc2VlZGluZy5cbiAgdHJ5IHtcbiAgICBub2RlY3J5cHRvID0gcmVxdWlyZSgnY3J5cHRvJyk7XG4gIH0gY2F0Y2ggKGV4KSB7fVxufSBlbHNlIGlmICgodHlwZW9mIGRlZmluZSkgPT0gJ2Z1bmN0aW9uJyAmJiBkZWZpbmUuYW1kKSB7XG4gIGRlZmluZShmdW5jdGlvbigpIHsgcmV0dXJuIHNlZWRyYW5kb207IH0pO1xufSBlbHNlIHtcbiAgLy8gV2hlbiBpbmNsdWRlZCBhcyBhIHBsYWluIHNjcmlwdCwgc2V0IHVwIE1hdGguc2VlZHJhbmRvbSBnbG9iYWwuXG4gIG1hdGhbJ3NlZWQnICsgcm5nbmFtZV0gPSBzZWVkcmFuZG9tO1xufVxuXG5cbi8vIEVuZCBhbm9ueW1vdXMgc2NvcGUsIGFuZCBwYXNzIGluaXRpYWwgdmFsdWVzLlxufSkoXG4gIC8vIGdsb2JhbDogYHNlbGZgIGluIGJyb3dzZXJzIChpbmNsdWRpbmcgc3RyaWN0IG1vZGUgYW5kIHdlYiB3b3JrZXJzKSxcbiAgLy8gb3RoZXJ3aXNlIGB0aGlzYCBpbiBOb2RlIGFuZCBvdGhlciBlbnZpcm9ubWVudHNcbiAgKHR5cGVvZiBzZWxmICE9PSAndW5kZWZpbmVkJykgPyBzZWxmIDogdGhpcyxcbiAgW10sICAgICAvLyBwb29sOiBlbnRyb3B5IHBvb2wgc3RhcnRzIGVtcHR5XG4gIE1hdGggICAgLy8gbWF0aDogcGFja2FnZSBjb250YWluaW5nIHJhbmRvbSwgcG93LCBhbmQgc2VlZHJhbmRvbVxuKTtcbiJdLCJuYW1lcyI6WyJpc05pbCIsIngiLCJpbnNlcnRTbWFsbGVyIiwiZGlzdGFuY2VzQXIiLCJpbmRleGVzIiwibnVtIiwiaW5kZXgiLCJsZW5ndGgiLCJuZXdQb3NpdGlvbiIsImZpbmRJbmRleCIsInYiLCJwb3AiLCJzcGxpY2UiLCJGbG9hdDMyQXJyYXkiLCJhc3NlcnQiLCJjb25kaXRpb24iLCJtZXNzYWdlIiwiRXJyb3IiLCJ2ZWN0b3JEaXN0YW5jZU1ldHJpY3NNZXRob2RzIiwicCIsInEiLCJyZXN1bHQiLCJsZW4iLCJpIiwiTWF0aCIsInBvdyIsInNxcnQiLCJzdHJpbmdEaXN0YW5jZU1ldHJpY3NNZXRob2RzIiwiczEiLCJzMiIsImRpc3QiLCJiaXRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHMiLCJpbnRBcnJheURpc3RhbmNlTWV0cmljc01ldGhvZHMiLCJudW1iZXJEaXN0YW5jZU1ldHJpY3NNZXRob2RzIiwibnVtYmVyQXJyYXlEaXN0YW5jZU1ldHJpY3MiLCJBdmFpbGFibGVNZXRyaWNzIiwiTWV0cmljVG9EYXRhVHlwZSIsIk9iamVjdCIsImtleXMiLCJyZWR1Y2UiLCJyZXQiLCJrZXkiLCJ2YWwiLCJNZWFzdXJlIiwibWV0aG9kIiwiZGF0YVR5cGUiLCJjb25zdHJ1Y3RvciIsInRoaXMiLCJtZXRyaWNOZWVkc0FyZ3MiLCJuYW1lIiwiaXNOdW1iZXJBcnJheU1ldHJpYyIsImdldE1lYXN1cmUiLCJvcHRzIiwiZGljdCIsImhhc093blByb3BlcnR5Iiwic3RhdGljIiwiYXZhaWxhYmxlTWVhc3VyZXMiLCJEaXN0YW5jZU1hdHJpeFNlcnZpY2UiLCJfd29ya2VycyIsIl93b3JrZXJDb3VudCIsIl90ZXJtaW5hdGVPbkNvbXBsZXRlIiwidXNlQ29uY3VycmVudFdvcmtlcnMiLCJ0ZXJtaW5hdGVPbkNvbXBsZXRlIiwidGhyZWFkQ291bnQiLCJuYXZpZ2F0b3IiLCJoYXJkd2FyZUNvbmN1cnJlbmN5IiwibWF4IiwiQXJyYXkiLCJmaWxsIiwibWFwIiwiV29ya2VyIiwiVVJMIiwiYXN5bmMiLCJ2YWx1ZXMiLCJmbk5hbWUiLCJub3JtYWxpemUiLCJjYWxjTXVsdGkiLCJmbk5hbWVzIiwid2VpZ2h0cyIsImFnZ3JlZ2F0aW9uTWV0aG9kIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJwcm9taXNlcyIsInRvdGFsTGVuZ3RoIiwibWluIiwiY2h1bmtTaXplIiwiZGlzdGFuY2VNYXRyaXgiLCJlbmRSb3ciLCJlbmRDb2wiLCJsbWluIiwibG1heCIsIk51bWJlciIsIk1JTl9WQUxVRSIsInN0YXJ0IiwiZmxvb3IiLCJlbmQiLCJzdGFydFJvdyIsInN0YXJ0Q29sIiwicG9zdE1lc3NhZ2UiLCJjaHVuY2tTaXplIiwicmVzb2x2ZVdvcmtlciIsInJlamVjdFdvcmtlciIsIm9ubWVzc2FnZSIsImRhdGEiLCJlcnJvciIsImRpc3RhbmNlTWF0cml4RGF0YSIsInNldFRpbWVvdXQiLCJ0ZXJtaW5hdGUiLCJzZXQiLCJhbGwiLCJmb3JFYWNoIiwidmFsdWUiLCJlIiwid29ya2VyIiwidGF1UmFuZEludCIsIm4iLCJyYW5kb20iLCJ0YXVSYW5kIiwiZW1wdHkiLCJvdXRwdXQiLCJwdXNoIiwidW5kZWZpbmVkIiwicmFuZ2UiLCJfIiwiZmlsbGVkIiwiemVyb3MiLCJtZWFuIiwiaW5wdXQiLCJzdW0iLCJyZWplY3Rpb25TYW1wbGUiLCJuU2FtcGxlcyIsInBvb2xTaXplIiwicmVqZWN0U2FtcGxlIiwiaiIsImJyb2tlbiIsImsiLCJyZXNoYXBlMmQiLCJhIiwiYiIsInJvd3MiLCJjb2wiLCJtYWtlSGVhcCIsIm5Qb2ludHMiLCJzaXplIiwibWFrZUFycmF5cyIsImZpbGxWYWx1ZSIsImhlYXAiLCJJbmZpbml0eSIsImhlYXBQdXNoIiwicm93Iiwid2VpZ2h0IiwiZmxhZyIsImluZGljZXMiLCJ1bmNoZWNrZWRIZWFwUHVzaCIsImlzTmV3IiwiaVN3YXAiLCJpYzEiLCJpYzIiLCJoZWFwU2hhcGUyIiwiYnVpbGRDYW5kaWRhdGVzIiwiY3VycmVudEdyYXBoIiwiblZlcnRpY2VzIiwibk5laWdoYm9ycyIsIm1heENhbmRpZGF0ZXMiLCJjYW5kaWRhdGVOZWlnaGJvcnMiLCJpZHgiLCJpc24iLCJkIiwiZGVoZWFwU29ydCIsImluZEhlYXAiLCJkaXN0SGVhcCIsImluZEhlYXBJbmRleCIsImRpc3RIZWFwSW5kZXgiLCJ0ZW1wMSIsInRlbXAyIiwic2lmdERvd24iLCJoZWFwMSIsImhlYXAyIiwiY2VpbGluZyIsImVsdCIsImxlZnRDaGlsZCIsInJpZ2h0Q2hpbGQiLCJzd2FwIiwic21hbGxlc3RGbGFnZ2VkIiwiaW5kIiwibWluRGlzdCIsInJlc3VsdEluZGV4IiwiU3BhcnNlTWF0cml4IiwiZW50cmllcyIsIk1hcCIsIm5Sb3dzIiwibkNvbHMiLCJjb2xzIiwiZGltcyIsImNoZWNrRGltcyIsIm1ha2VLZXkiLCJoYXMiLCJnZXQiLCJkZWZhdWx0VmFsdWUiLCJnZXRBbGwiLCJvcmRlcmVkIiwicm93Q29sVmFsdWVzIiwic29ydCIsImdldERpbXMiLCJnZXRSb3dzIiwiZnJvbSIsIl9rZXkiLCJnZXRDb2xzIiwiZ2V0VmFsdWVzIiwiZm4iLCJ2YWxzIiwidG9BcnJheSIsIm1hdHJpeCIsIm9sZFJvd3MiLCJvbGRDb2xzIiwib2xkVmFscyIsIm1hdGxlbiIsIkludDMyQXJyYXkiLCJwYWlyd2lzZU11bHRpcGx5IiwiZWxlbWVudFdpc2UiLCJ5IiwiYWRkIiwic3VidHJhY3QiLCJtdWx0aXBseVNjYWxhciIsInNjYWxhciIsImVsaW1pbmF0ZVplcm9zIiwibSIsInplcm9JbmRpY2VzIiwiU2V0IiwicmVtb3ZlQnlaZXJvSW5kZXgiLCJuZXh0VmFsdWVzIiwiZmlsdGVyIiwibmV4dFJvd3MiLCJuZXh0Q29scyIsIm5vcm1UeXBlIiwibm9ybUZuIiwibm9ybUZucyIsImNvbHNCeVJvdyIsIm5leHRNYXRyaXgiLCJub3JtIiwieHMiLCJvcCIsInZpc2l0ZWQiLCJvcGVyYXRlIiwibmV4dFZhbHVlIiwidmFsdWVzQSIsInJvd3NBIiwiY29sc0EiLCJ2YWx1ZXNCIiwicm93c0IiLCJjb2xzQiIsImdldENTUiIsImluZHB0ciIsImN1cnJlbnRSb3ciLCJGbGF0VHJlZSIsImh5cGVycGxhbmVzIiwib2Zmc2V0cyIsImNoaWxkcmVuIiwibWFrZUZvcmVzdCIsIm5UcmVlcyIsImxlYWZTaXplIiwidHJlZXMiLCJtYWtlRXVjbGlkZWFuVHJlZSIsIm1ha2VUcmVlIiwiZm9yZXN0IiwidHJlZSIsIm5Ob2RlcyIsIm51bU5vZGVzIiwibkxlYXZlcyIsIm51bUxlYXZlcyIsImh5cGVycGxhbmUiLCJyZWN1cnNpdmVGbGF0dGVuIiwiZmxhdHRlblRyZWUiLCJzcGxpdFJlc3VsdHMiLCJsZWZ0SW5kZXgiLCJyaWdodEluZGV4IiwibGVmdCIsInJpZ2h0IiwiaHlwZXJwbGFuZU9mZnNldCIsImh5cGVycGxhbmVWZWN0b3IiLCJuTGVmdCIsIm5SaWdodCIsInNpZGUiLCJtYXJnaW4iLCJpbmRpY2VzTGVmdCIsImluZGljZXNSaWdodCIsIm9mZnNldCIsImV1Y2xpZGVhblJhbmRvbVByb2plY3Rpb25TcGxpdCIsImlzTGVhZiIsIm5vZGVOdW0iLCJsZWFmTnVtIiwib2xkTm9kZU51bSIsInJlcyIsInNlbGVjdFNpZGUiLCJwb2ludCIsInNlYXJjaEZsYXRUcmVlIiwibm9kZSIsIlNNT09USF9LX1RPTEVSQU5DRSIsIk1JTl9LX0RJU1RfU0NBTEUiLCJVTUFQIiwibGVhcm5pbmdSYXRlIiwibG9jYWxDb25uZWN0aXZpdHkiLCJuQ29tcG9uZW50cyIsIm5FcG9jaHMiLCJuZWdhdGl2ZVNhbXBsZVJhdGUiLCJyZXB1bHNpb25TdHJlbmd0aCIsInNldE9wTWl4UmF0aW8iLCJzcHJlYWQiLCJ0cmFuc2Zvcm1RdWV1ZVNpemUiLCJ0YXJnZXRNZXRyaWMiLCJ0YXJnZXRXZWlnaHQiLCJ0YXJnZXROTmVpZ2hib3JzIiwiZGlzdGFuY2VGbiIsIm51bWVyaWMiLCJrbm5JbmRpY2VzIiwia25uRGlzdGFuY2VzIiwiZ3JhcGgiLCJYIiwiaXNJbml0aWFsaXplZCIsInJwRm9yZXN0IiwiaW5pdEZyb21SYW5kb20iLCJpbml0RnJvbVRyZWUiLCJzZWFyY2giLCJzZWFyY2hHcmFwaCIsIlkiLCJlbWJlZGRpbmciLCJvcHRpbWl6YXRpb25TdGF0ZSIsIk9wdGltaXphdGlvblN0YXRlIiwibmVpZ2hib3JzIiwicGFyYW1zIiwic2V0UGFyYW0iLCJmaXQiLCJpbml0aWFsaXplRml0Iiwib3B0aW1pemVMYXlvdXQiLCJjYWxsYmFjayIsIm9wdGltaXplTGF5b3V0QXN5bmMiLCJzZXRTdXBlcnZpc2VkUHJvamVjdGlvbiIsInNldFByZWNvbXB1dGVkS05OIiwiZ2V0TkVwb2NocyIsImtublJlc3VsdHMiLCJuZWFyZXN0TmVpZ2hib3JzIiwiZnV6enlTaW1wbGljaWFsU2V0IiwibWFrZVNlYXJjaEZucyIsIm1ha2VTZWFyY2hHcmFwaCIsInByb2Nlc3NHcmFwaEZvclN1cGVydmlzZWRQcm9qZWN0aW9uIiwiaGVhZCIsInRhaWwiLCJlcG9jaHNQZXJTYW1wbGUiLCJpbml0aWFsaXplU2ltcGxpY2lhbFNldEVtYmVkZGluZyIsImluaXRpYWxpemVPcHRpbWl6YXRpb24iLCJwcmVwYXJlRm9yT3B0aW1pemF0aW9uTG9vcCIsInF1ZXJ5UG9pbnRzIiwiX2hlYXAiLCJfdHJlZSIsImluaXRpYWxpemF0aW9uIiwidHJpZWQiLCJ2ZXJ0ZXgiLCJjYW5kaWRhdGVzIiwic2xpY2UiLCJjYW5kaWRhdGUiLCJrbm4iLCJkaXN0YW5jZXMiLCJuZWlnaGJvciIsImRpc3RhbmNlIiwidHJhbnNmb3JtIiwidG9UcmFuc2Zvcm0iLCJyYXdEYXRhIiwiaW5pdCIsInJlc3VsdHMiLCJhZGp1c3RlZExvY2FsQ29ubmVjdGl2aXR5Iiwic2lnbWFzIiwicmhvcyIsInNtb290aEtOTkRpc3RhbmNlIiwiY29tcHV0ZU1lbWJlcnNoaXBTdHJlbmd0aHMiLCJjc3JNYXRyaXgiLCJfeiIsImluaXRUcmFuc2Zvcm0iLCJncmFwaE1heCIsIm1ha2VFcG9jaHNQZXJTYW1wbGUiLCJhc3NpZ25PcHRpbWl6YXRpb25TdGF0ZVBhcmFtZXRlcnMiLCJoZWFkRW1iZWRkaW5nIiwidGFpbEVtYmVkZGluZyIsImN1cnJlbnRFcG9jaCIsImZhckRpc3QiLCJjYXRlZ29yaWNhbFNpbXBsaWNpYWxTZXRJbnRlcnNlY3Rpb24iLCJzdGVwIiwib3B0aW1pemVMYXlvdXRTdGVwIiwiZ2V0RW1iZWRkaW5nIiwibWV0cmljTk5EZXNjZW50IiwibGVhZkFycmF5Iiwibkl0ZXJzIiwiZGVsdGEiLCJyaG8iLCJycFRyZWVJbml0IiwiYyIsImNqIiwiY2siLCJyb3VuZCIsImxvZyIsImxvZzIiLCJzcGFyc2VNYXRyaXgiLCJ0cmFuc3Bvc2UiLCJwcm9kTWF0cml4Iiwic2ltcGxpY2lhbFNldCIsInRhcmdldCIsInVua25vd25EaXN0IiwiaW50ZXJzZWN0aW9uIiwiZXhwIiwiZmFzdEludGVyc2VjdGlvbiIsInJlc2V0TG9jYWxDb25uZWN0aXZpdHkiLCJuSXRlciIsImJhbmR3aWR0aCIsImxvIiwiaGkiLCJtaWQiLCJpdGhEaXN0YW5jZXMiLCJub25aZXJvRGlzdHMiLCJpbnRlcnBvbGF0aW9uIiwicHN1bSIsImFicyIsIm1lYW5JdGhEaXN0YW5jZXMiLCJtZWFuRGlzdGFuY2VzIiwiZ3JhcGhWYWx1ZXMiLCJlbnRyeSIsInciLCJzdGF0ZSIsImFzc2lnbiIsImRpbSIsIm1vdmVPdGhlciIsImVwb2Noc1Blck5lZ2F0aXZlU2FtcGxlIiwiZXBvY2hPZk5leHROZWdhdGl2ZVNhbXBsZSIsImVwb2NoT2ZOZXh0U2FtcGxlIiwiaW5pdGlhbEFscGhhIiwiYWxwaGEiLCJnYW1tYSIsInh2IiwieXYiLCJwYXJhbWV0ZXJWYWx1ZXMiLCJwYXJhbWV0ZXJpemVkRnVuY3Rpb24iLCJvcHRpb25zIiwibWF4SXRlcmF0aW9ucyIsImdyYWRpZW50RGlmZmVyZW5jZSIsImRhbXBpbmciLCJlcnJvclRvbGVyYW5jZSIsIm1pblZhbHVlcyIsIm1heFZhbHVlcyIsImluaXRpYWxWYWx1ZXMiLCJwYXJhbWV0ZXJzIiwicGFyTGVuIiwiTUFYX1NBRkVfSU5URUdFUiIsIk1JTl9TQUZFX0lOVEVHRVIiLCJpdGVyYXRpb24iLCJlcnJvckNhbGN1bGF0aW9uIiwiY29udmVyZ2VkIiwiaXNOYU4iLCJwYXJhbWV0ZXJFcnJvciIsIml0ZXJhdGlvbnMiLCJmaW5kQUJQYXJhbXMiLCJjdXJyZW50Iiwib3RoZXIiLCJkaXN0U3F1YXJlZCIsInJEaXN0IiwiZ3JhZENvZWZmIiwiZ3JhZEQiLCJjbGlwIiwibk5lZ1NhbXBsZXMiLCJlcG9jaENhbGxiYWNrIiwiZXBvY2hDb21wbGV0ZWQiLCJzaG91bGRTdG9wIiwiaXNGaW5pc2hlZCIsImVyciIsImNsaXBWYWx1ZSIsIlRTTkUiLCJwZXJwbGV4aXR5IiwiZXBzaWxvbiIsIml0ZXIiLCJOIiwiUCIsImdhaW5zIiwieXN0ZXAiLCJnZXRvcHQiLCJvcHQiLCJmaWVsZCIsImRlZmF1bHR2YWwiLCJyZXR1cm5WIiwidlZhbHVlIiwiZ2F1c3NSYW5kb20iLCJ1IiwiciIsInJhbmRuIiwibXUiLCJzdGQiLCJBcnJheUJ1ZmZlciIsImFyciIsInJhbmRuMmQiLCJzIiwidXNlcyIsImwyIiwieDEiLCJ4MiIsIkQiLCJ4MWkiLCJ4MmkiLCJ4dG9kIiwiZ2V0SXRlclNpemUiLCJyb3dTaXplIiwiZDJwIiwidG9sIiwiaW5kZXhlciIsImhUYXJnZXQiLCJwcm93IiwiYmV0YW1pbiIsImJldGFtYXgiLCJiZXRhIiwiZG9uZSIsIm1heHRyaWVzIiwicGoiLCJuSGVyZSIsInBPdXQiLCJOMiIsInNpZ24iLCJpbml0RGF0YVJhdyIsImRpc3RzIiwiaW5pdFNvbHV0aW9uIiwiaW5pdERhdGFEaXN0IiwiY29uc29sZSIsInRpbWUiLCJ0aW1lRW5kIiwiZ2V0U29sdXRpb24iLCJjZyIsImNvc3RHcmFkIiwiY29zdCIsImdyYWQiLCJ5bWVhbiIsImdpZCIsInNpZCIsImdhaW5pZCIsIm5ld2dhaW4iLCJuZXdzaWQiLCJkZWJ1Z0dyYWQiLCJ5b2xkIiwiY2cwIiwiY2cxIiwiYW5hbHl0aWMiLCJudW1lcmljYWwiLCJxdUFyciIsInBtdWwiLCJxc3VtIiwicXUiLCJwcmV2IiwiUSIsInByZW11bHQiLCJNdWx0aUNvbHVtblJlZHVjZXIiLCJUU05FUmVkdWNlciIsInJlZHVjZXIiLCJkaXN0YW5jZUZuYW1lcyIsImRpc3RhbmNlRm5zIiwiZGlzdGFuY2VGbkFyZ3MiLCJwcm9ncmVzc0Z1bmMiLCJzdXBlciIsInJhbmRvbVNlZWQiLCJEYXRlIiwicmFuZG9tRm4iLCJtYXRyaXhTZXJ2aWNlIiwiVU1BUFJlZHVjZXIiLCJ2ZWN0b3JzIiwiX3BhcmFsbGVsRGlzdGFuY2VXb3JrZXJzIiwia25uUmVzIiwibXVsdGlDb2x1bW5LTk4iLCJrbm5JbmRleGVzIiwiZml0QXN5bmMiLCJlcG9jIiwiQXZhaWxhYmxlUmVkdWNlcnMiLCJNdWx0aUNvbERpbVJlZHVjZXIiLCJtZXRyaWNzIiwiZGlzdGFuY2VBZ2dyZWdhdGlvbiIsIm1lYXN1cmVzIiwibWVhc3VyZSIsImJpdEFycmF5TGVuZ3RoIiwiX2xlbmd0aCIsIl9kYXRhIiwidHlwZU5hbWUiLCJhdmFpbGFibGVNZXRob2RzIiwiYXZhaWxhYmxlTWV0cmljcyIsImFucyIsIm9iaiIsImFycmF5IiwiZXBvY2hOdW0iLCJlcG9jaHNMZW5ndGgiLCJzZWxmIiwiY29sdW1uc0RhdGEiLCJkaXN0YW5jZU1ldHJpY3MiLCJvbk1lc3NhZ2UiLCJhbGVhIiwieG9yMTI4IiwieG9yd293IiwieG9yc2hpZnQ3IiwieG9yNDA5NiIsInR5Y2hlaSIsInNyIiwibW9kdWxlIiwiZXhwb3J0cyIsImdsb2JhbCIsImRlZmluZSIsIkFsZWEiLCJzZWVkIiwibWUiLCJtYXNoIiwiU3RyaW5nIiwiaCIsImNoYXJDb2RlQXQiLCJuZXh0IiwidCIsInMwIiwiY29weSIsImYiLCJpbXBsIiwieGciLCJwcm5nIiwiaW50MzIiLCJkb3VibGUiLCJxdWljayIsIlhvckdlbiIsInN0cnNlZWQiLCJ6IiwibGltaXQiLCJwb29sIiwibWF0aCIsIm5vZGVjcnlwdG8iLCJ3aWR0aCIsInN0YXJ0ZGVub20iLCJzaWduaWZpY2FuY2UiLCJvdmVyZmxvdyIsIm1hc2siLCJzZWVkcmFuZG9tIiwic2hvcnRzZWVkIiwibWl4a2V5IiwiZmxhdHRlbiIsImVudHJvcHkiLCJ0b3N0cmluZyIsIm91dCIsInJhbmRvbUJ5dGVzIiwiVWludDhBcnJheSIsImNyeXB0byIsIm1zQ3J5cHRvIiwiZ2V0UmFuZG9tVmFsdWVzIiwiYnJvd3NlciIsInBsdWdpbnMiLCJzY3JlZW4iLCJhdXRvc2VlZCIsImFyYzQiLCJBUkM0IiwiZyIsIlMiLCJwYXNzIiwiaXNfbWF0aF9jYWxsIiwia2V5bGVuIiwiY291bnQiLCJkZXB0aCIsInByb3AiLCJ0eXAiLCJzbWVhciIsInN0cmluZ3NlZWQiLCJmcm9tQ2hhckNvZGUiLCJhcHBseSIsImV4Il0sInNvdXJjZVJvb3QiOiIifQ==